キーワード: Delphi;
1。導入
Delphiを使用してアプリケーションを開発する場合、通常、さまざまな形式で多くのドキュメントやレポートを設計する必要があります。多くの場合、Delphi自体がレポートを設計するための多くのコントロールまたは方法を提供する必要があります。中国の入力およびデータ形式の制御として、動作がより厄介です。誰もがよく知っているオフィスツールを使用すると、この問題をうまく解決できます。以下は、さまざまな文書やレポートの作成を完了するためにオフィスを使用する方法の詳細な紹介です。
2。実装方法
DelphiとOfficeを使用して開発するための3つの主な方法があります。
(1)DelphiのコントロールTolecontainerを介して、これはオフィスドキュメントを直接使用する必要がある最も簡単です。さらに、このようにして起動されたオフィス文書は全体(インターフェイスから)ですが、克服できない不利な点があります。つまり、オフィス文書はデルファイを通じて制御することはできず、柔軟に操作する目的を達成することはできません。
(2)Delphiが提供するサーバーコントロールを使用して、オフィスのプロパティを使用し、Delphiのサーバー制御を使用して、プログラミング中にコードプロンプトを実装できます。しかし、Delphiでは呼び出せないオフィス機能(自分で書かれたVBAマクロコードなど)もあります。関数を実装する場合、Delphiを呼び出すときにVBAコードで選択できるパラメーターを追加する必要があります。そうしないと、コンピレーションも渡すことができません。このように開始されたOfficeおよびDelphiプログラムは、2つの形式に属します。
(3)CreateOleObjectを使用すると、オフィスを開始し、OLEモードでオフィスを制御します。この方法は、実際にはOLEであるCreateOleObjectsのOfficeを呼び出すことですが、この方法は、自分で書かれたVBAマクロコードを含むオフィスファイルの完全な制御を真に実現し、オフィスのすべてのプロパティを使用することができます。 Servers ControlおよびComテクノロジーと比較して、この方法は、基本的にVBAで独自のコードを作成するのと同じであり、デフォルトのコードを使用する必要はありません。
3 。ソフトウェアの実装
3.1最初の方法:Delphiの制御Tolecontainerを介してオフィスを埋め込みます。
(1)DelphiのシステムページコントロールToleContainerの実装を呼び出します。
(2)OleContainerをダブルクリックすると、次のインターフェイスが表示されます。
(3)この時点で、「ファイルから作成」を選択し、対応するドキュメントを選択し、次の図を調整する機能を実装できます。
3.2 2番目の方法:Delphiが提供するサーバーコントロールを使用して、Office、Excel、PowerPoint、Outlook、Accessなどを簡単に制御できます例として、その実装方法を紹介します。
(1)TwoDocument(Word Fileオブジェクトの作成)、TwoDocument(Wordを起動してWordとの接続を確立する)、TwoDofont(Wordファイルのフォントを設定)、およびTwodParagraphFormat(Wordファイルのパラグラフ形式を設定)を呼び出します。
(2)Wordを開始し、TwitterApplicationを使用して実装します。
試す
wordapplication.connect;
を除外する
MESSAGEDLG( '単語はインストールされない場合があります'、mterror、[mbok]、0);
アボート;
終わり;
(3)新しいファイルを作成し、TwitterApplicationを使用して実装します。
テンプレート:= emptyparam; //テンプレートが使用されていないことを意味します
newtemplate:= false; //新しいドキュメントのタイプがドキュメントであることを意味します。
//新しいドキュメントを追加します
wordapplication.documents.add(template、newtemplate ) ;
//プログラム操作の効率を改善するためのピンイン検索と文法検索を閉じます
wordapplication.options.checkspellingasyoutype:= false;
wordapplication.options.checkgrammarasyoutype:= false;
(3)データを挿入し、TwitterDocumentを介して実装します。
//文章
worddocument.range.insertafter( 'oracle database'+chr(#13));
//シート
worddocument1.tables.add(worddocument1.range、rownum、colnum、テンプレート、newtemplate); // rownumはテーブルの行の数、colnumはテーブル列の数です
//テーブルにデータを挿入します
worddocument1.tables.item(1).cell(1,1).range.text:= '証明書番号';
worddocument1.tables.item(1).cell(1,2).range.text:= 'id number'
(4)形式設定
wordfont.connectto(worddocument.sentences.getLast.font); //特定のテキストを設定します
wordfont.connectto(worddocument.paragraphs.getlast.font); //特定のテキストを設定します
wordfont.bold:= 1;
wordfont.italic:= 1;……………………
worddocument1.pagesetup.headerdistance := 1.5;
worddocument1.pagesetup.footerdistance:= 1.75;
//ヘッダーとフッターを設定します
worddocument1.activewindow.activepane.view.seekview:= wdseekcurrentpagefooter;
//フッターを右に曲げます
worddocument1.activewindow.activepane.selection.paragraphformat.alignment:= wdalignparagragraphright;
………………………………………………………………………
3.3 3番目の方法:CreateOleObjectを使用してオフィスを開始し、OLEモードでオフィスを制御します。 Excelテーブルを例に挙げます(テーブルの形式は事前に設定するか、自分で定義できます。ここでは、例としてテーブルの形式を事前に設定します)、説明してください。
(1)comobjクラスを使用して追加します。
(2)グローバル変数:fvexcel、タイプバリアントを示します
(3)function openexcel(strfilename:string)を定義するなど、Excelを開始する関数を定義します:boolean;
function tform1。
始める
結果:= true;
試す
fvexcel:= createoleObject( 'excel.application');
を除外する
Application.MessageBox( 'Enabled Excelが開く'、PCHAR(Application.Title)、MB_ICONERROR);
結果:= false;
終わり;
fvexcel.visible:= true;
fvexcel.caption:= '';
fvexcel.workbooks.open ( strfilename );
fvexcel.worksheets [ 1 ] .activate ;
終わり;
(4)データをfvexcelに挿入します
fvexcel.cells [row、col] .value:= 'china' ; //行は行を表し、colは列を表します。
(5)形式を設定します
fvexcel.rows [row] .font.color:= clred ;
fvexcel.activesheet.pagesetup.leftmargin := 1 ;
fvexcel.ActiveSheet.PagesEtup := 1 ;
fvexcel.activesheet.pagesetup.zoom := 100 ;
fvexcel.activesheet.pagesetup.papersize:= xlpapera4 ;
4 。いくつかの経験
プログラミングプロセスでは、多くの場合、オフィスドキュメントと表を設定する必要があります。彼らはVBAマニュアルでこれらのものを見つけることは難しいので、最初にオフィスを開いて、事前に設計したい形式を作成し、オフィスのマクロを録音し、オフィスで視覚的な基本エディターを開くことです。コードを表示します。通常、多くのプロパティ、関数、またはメソッドはDelphiプログラムで直接使用でき、それらのいくつかは、わずかに変更されている限りDelphiで使用できます。
5 。結論
Delphiはオフィスと完全に組み合わせることができ、さまざまなスタイルのテーブル、テキスト、スライドなどが設計されています。同時に、Delphiを介して、必要なデータがオフィスの適切な場所に挿入され、オフィス自体の機能がプレビュー、印刷、保存されるため、プログラムのデバッグとポジショニングデバッグの時間を短縮し、プログラミングの難しさを簡素化します。プログラマーのワークロードを削減します。ユーザーの場合、おなじみのオフィスを使用すると、システムの操作性が向上します。このアイデアは、「プロフェッショナルタイトルレビュー管理情報システム」で広く使用されています。