全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1621
推到 Plurk!
推到 Facebook!

WordApplication 的印表機及字型設定

 
shinnlu
一般會員


發表:6
回覆:11
積分:3
註冊:2007-09-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-10-08 23:39:24 IP:220.130.xxx.xxx 訂閱
下面的文章是原始的問題,文章打完突然靈機一動,找出解決方法
不知道是OS的問題還是 Office 版本的問題,設定方式不太一樣
Windows Server 2003 Office 2003 的設定方式

[code cpp]
Word->Selection->Font->Name = WStr;原本的方式會出錯
Word->Selection->Font->set_Name(WStr);
WStr = "DYMO LabelWriter 330 Turbo-USB";
Word->ActivePrinter = WStr;原本的方式會出錯
Word->set_ActivePrinter(WStr);
[/code]
1改成2,4改成5就可以了

===以下是原始問題===
我參考了很多站上文章,WordApplication 在操作開檔,輸入文章、換行都沒有問題
但是卻無法設定印表機及字型,以下是我錄製 WORD VBA 的程式

[code vb]
Selection.TypeText Text:="中文第一行"
Selection.TypeParagraph
Selection.TypeText Text:="中文第二行"
Selection.TypeParagraph
Selection.WholeStory
Selection.Font.Name = "標楷體"
Selection.Font.Size = 14
ActivePrinter = "DYMO LabelWriter 330 Turbo-USB"
[/code]
我把這些程式轉成 BCB Code,如下

[code cpp]
WideString WStr;
if (OpenDialog1->Execute())
{
OleVariant FileName = OpenDialog1->FileName;

Word->Connect();
Word->set_Visible(true);
WordDoc->ConnectTo(Word->Documents->Open(FileName));
Word->Activate();
WordDoc->Activate();

WStr = "中文第一行";
Word->Selection->TypeText(WStr);
Word->Selection->TypeParagraph();
WStr = "中文第二行";
Word->Selection->TypeText(WStr);
Word->Selection->TypeParagraph();

Word->Selection->WholeStory();
WStr = "標楷體";
Word->Selection->Font->Name = WStr;
WStr = "DYMO LabelWriter 330 Turbo-USB";
Word->ActivePrinter = WStr;
Word->ActiveDocument->PrintOut();
}
[/code]
上面兩行紅色程式碼處會出現
C Error E2247 '_Font::Name' is not accessible
C Error E2247 'TWordApplication::ActivePrinter' is not accessible
編輯記錄
shinnlu 重新編輯於 2007-10-08 23:41:21, 註解 程式碼亂掉‧
shinnlu 重新編輯於 2007-10-08 23:42:38, 註解 還是會亂掉‧
系統時間:2024-05-03 11:54:06
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!