フォーム上にワード文書を表示するには

解決


浜の武蔵  2005-08-25 20:11:32  No: 17258

毎度、お世話になっております。

今、下記の部分の開発で停滞しております。

* Delphiのフォーム上に指定したワード文書(Ms-Word)の内容をリードオンリー

  で表示する

現在、DelphiからMs-Wordを起動する方法で試しているのですが、Word側で

保護を掛けても、完全な保護状態にならない為、仕様に耐えられません。

根本的に考え方が間違っているのでしょうか。

考え方、若しくはサンプル等をお教え頂きたく、お願いいたします。、


deldel  2005-08-25 20:22:12  No: 17259

こんな感じで。uses に ComObj が必要です。
OleContainer1 は system タブにあります。

var
  WordApp: Variant;
  wFileName: WideString;
begin
  wFileName := 'C:\AAA.doc';

  WordApp := CreateOleObject('Word.Application');
  OleContainer1.CreateObjectFromFile(wFileName, False);
  OleContainer1.Visible := True;
  OleContainer1.DoVerb(ovShow);
end;


浜の武蔵  2005-08-25 20:46:31  No: 17260

deldelさん、ありがとうございました。

確かに表示されました・・・・・・が

Word文書が表示されたとき、ワードの作成環境まで

表示される為、見た目が美しくありません。

なんとかならないでしょうか。よろしくお願いいたします。


メラトニン  2005-08-25 22:32:05  No: 17261

印刷してしまっては如何でしょうか?


deldel  2005-08-25 23:44:12  No: 17262

上部にパネルを貼るとか、OleContainer をパネルの中に置き、
Top := -50; とかすると、見えなくはなりますが・・・


浜の武蔵  2005-08-26 21:05:07  No: 17263

deldel様、メラトニン様  ご助言ありがとうございました。

奮闘いたしましたが、期待した結果がでなくて、ワード文書をHTML化

してから表示する方式に改めました。結果は期待どうりでした。

ありがとうございました。これで解決とさせて頂きます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加