Delphi Programming / Object Pascal
[掲載 2009年05月31日] [更新 2013年11月28日] ワード操作フォームEx |
ワード操作フォームEx 参考コード類
文書のプロパティの操作 |
動作確認等 |
Windows 7 U64(SP1) + Delphi XE2 + Word 2010 |
下の表のような文書のプロパティの内容を取得または設定するサンプルコードです.
BuiltInDocumentProperties プロパティの値を操作します. |
プロパティ定数 |
項目名 |
wdPropertyTitle |
タイトル |
wdPropertySubject |
サブタイトル |
wdPropertyAuthor |
作成者 |
wdPropertyManager |
管理者 |
wdPropertyCompany |
会社名 |
wdPropertyCategory |
分類 |
wdPropertyKeywords |
キーワード |
wdPropertyComments |
コメント |
wdPropertyHyperlinkbase |
ハイパーリンクの基点 |
procedure TplWordFormEx2.Button1Click(Sender: TObject);
var
objWordDoc : Olevariant;
StrText : String;
begin
objWordDoc := wdfWordApp.ActiveDocument;
StrText := objWordDoc.BuiltInDocumentProperties[wdPropertyAuthor].Value;
MessageBox(Handle, PChar(StrText), '情報', MB_ICONINFORMATION);
end;
procedure TplWordFormEx2.Button2Click(Sender: TObject);
var
objWordDoc : Olevariant;
begin
objWordDoc := wdfWordApp.ActiveDocument;
objWordDoc.BuiltInDocumentProperties[wdPropertyAuthor].Value := 'Mr.XRAY';
end;
上のサンプルで取得または設定する文書のプロパティは,下図のダイアログで設定できます.このダイアログを表示するコードです.
このダイアログの内容は,Word 2007 では,
[Officeボタン] [配布の準備] [プロパティ] で文書のプロパティで設定できます.ダイアログは,[Officeボタン] [配布の準備] [プロパティ] [ドキュメントのプロパティ] [詳細プロパティ] で表示できます. |
|
図1
文書のプロパティダイアログ |
procedure TplWordFormEx2.Button4Click(Sender: TObject);
var
objWordApp : OleVariant;
begin
//これがないと正常に動作しない
wdfSetFocusWord;
objWordApp := wdfWordApp.Application;
try
objWordApp.CommandBars.ExecuteMso('AdvancedFileProperties');
except
raise;
end;
wdfSetFocusWord;
end;
下図の内容だけでよいのであれば,次のコードで,このダイアログを表示して設定できます.
このダイアログで [文書詳細] ボタンをクリックすると,上の図のダイアログが表示されます. |
|
図2
文書情報ダイアログ |
procedure TplWordFormEx2.Button3Click(Sender: TObject);
var
objDialog : OleVariant;
begin
wdfSetFocusWord;
try
objDialog := wdfWordApp.Dialogs.Item(wdDialogFileSummaryInfo);
objDialog.Show;
except
raise;
end;
wdfSetFocusWord;
end;
|