DELPHI FAQ: Работа с Word через OLE


Работа с Word через OLE
Previous  Home  Next




unit Unit1; interfaceuses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Buttons,
ComCtrls, ExtCtrls, OleCtnrs;
type
 TForm1 = class(TForm)
    OleContainer1: TOleContainer;
    Panel1: TPanel;
    StatusBar1: TStatusBar;
    mbLoad: TSpeedButton;
    mbPrint: TSpeedButton;
    OpenDialog1: TOpenDialog;
    procedure
 mbLoadClick(Sender: TObject);
    procedure
 mbPrintClick(Sender: TObject);
  private

 { Private declarations }

  public

{ Public declarations }

  end
;
var
 Form1: TForm1; i
  mplementation{$R *.DFM}


procedure
 TForm1.mbLoadClick(Sender: TObject);
begin

  // Покажем диалог, и если он отработал, то загрузим в контейнер

  if
 OpenDialog1.Execute and (OpenDialog1.FileName <> ''then
    OleContainer1.CreateObjectFromFile(OpenDialog1.FileName, false);
  / Если загрузилось что - нибудь, то покажем
    if
 OleContainer1.State <> osEmpty then OleContainer1.DoVerb(ovShow);
end
;

procedure
 TForm1.mbPrintClick(Sender: TObject);
var
 V: Variant;
begin

  if
 OleContainer1.State = osEmpty then
    begin

      MessageDlg('OLE не загружен !!'
, mtError, [mbOk], 0);
      exit;
    end
;
// Получаем объект, который воплощает в себе WordBasic интерфейс

  V := OleContainer1.OleObject.Application.WordBasic;
// Командуем до одурения ....

  V.FilePrint; end
end.


Взято с сайта http://blackman.wp-club.net/




DELPHI FAQ




EOMY TOP 100      Рейтинг@Mail.ru      Rambler's Top100