プロセス中にソースの RTF 形式を維持しながら、Word オートメーション (早期バインディング) を使用して TDBRichEdit コンポーネントの内容をスペル/文法チェックしたいと考えています。それを行う明白な方法は、次のようにクリップボードを使用することです。
- DBRichEdit.SelectAll;
- DBRichEdit.Lines.CopyToClipboard;
- WordDoc.Content.Paste;
- スペル/文法チェックを行います。
- WordDoc.Content.Copy;
- DBRichEdit.PasteFromClipboard.
それは機能しますが、クリップボードの内容を台無しにするので、これは悪いプログラミングだと思います(迷惑かもしれません)。
私は、Range オブジェクトの FormattedText プロパティを偶然見つけました。これにより、RTF 形式のテキスト (段落の書式設定を含む) を、クリップボードを介して渡すのではなく、範囲オブジェクトに割り当てることでコピー アンド ペーストできます。次のように宣言されています
プロパティ FormattedText: 範囲読み取り Get_FormattedText 書き込み Set_FormattedText;
WordXP.pas で、TDBRichEdit のコンテンツを割り当てる方法がわかりません。この物件の利用は可能ですか?Wordドキュメントへのストリーミングも試みましたが、役に立ちませんでした。
クリップボードを使用せずに、TDBRichEdit コンポーネント (DBRchEdit.Lines) のコンテンツを Word 文書に割り当てる (そしてスペル/文法チェック後に元に戻す) にはどうすればよいですか?