Delphi Programming / Object Pascal
[掲載 2009年06月20日] [更新 2013年11月27日] ワード操作フォームEx |
ワード操作フォームEx 参考コード類
印刷しない文字列の設定 |
動作確認等 |
Windows 7 U64(SP1) + Delphi XE2 + Word 2010 |
wdfHeaderFooterPrint プロパティを使う |
ヘッダフッタ部に挿入した文字列や図形は,wdfHeaderFooterPrint プロパティをFalseにすると印刷しません.帳票の入力画面等で,台紙となる帳票をヘッダ部に入れておき,台紙は印刷させないような用途に利用できます. |
文字列を「隠し文字」にすると,印刷しないように設定することができます.
隠し文字は次のように設定します.隠し文字にすると,デフォルトでは文字列に点線の下線が描画されます. |
|
図1
隠し文字には点線の下線が付く |
//=============================================================================
// 選択中の文字列を隠し文字にする
// 解除するにはHiddenプロパティの値を0にする
//=============================================================================
procedure TplWordFormEx2.Button1Click(Sender: TObject);
begin
wdfWordApp.Selection.Font.Hidden := 1;
end;
そして,隠し文字を以下のコードで印刷しないようにします. |
//=============================================================================
// 隠し文字列を表示するが,印刷の時は印刷しないようにする設定
//=============================================================================
procedure TplWordFormEx2.Button2Click(Sender: TObject);
begin
//隠し文字を表示する
wdfWordApp.ActiveWindow.View.ShowHiddenText := True;
//隠し文字を印刷しない
wdfWordApp.Options.PrintHiddenText := False;
end;
ダイアログで設定するには,まず,印刷したくない文字列を選択して,フォントの設定ダイアログを表示します.このダイアログで [隠し文字] の項目をチェックします. |
|
図2
隠し文字にする |
//=============================================================================
// フォントの設定ダイアログを表示
// 選択中の文字列を隠し文字にする
//=============================================================================
procedure TplWordFormEx2.Button3Click(Sender: TObject);
begin
wdfSetFocusWord;
wdfWordApp.Dialogs.Item(wdDialogFormatFont).Show(EmptyParam);
wdfSetFocusWord;
end;
隠し文字を印刷しないようにするには,Word オプションのダイアログの項目 [表示] を選択し,次の作業を行います.
- [常に画面に表示する編集記号] の [隠し文字] をチェック
- [印刷オプション] の [隠し文字を印刷する] のチェックを外す
下のコードがこのダイアログを表示するコードで,図がそのダイアログです. |
|
図3
隠し文字関係の設定 |
//=============================================================================
// Wordのオプションの[表示]ダイアログを表示
// 隠し文字を表示する印刷するかの設定をする
//=============================================================================
procedure TplWordFormEx2.Button4Click(Sender: TObject);
begin
wdfSetFocusWord;
wdfWordApp.Dialogs.Item(wdDialogToolsOptionsView).Show(EmptyParam);
wdfSetFocusWord;
end;
|