На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Rouse_, jack128, Krid
  
    > Работа с MS Word через OLE

      unit Unit1;

      interface

      uses
      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;

      implementation

      {$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.


      Источник: рассылка delphimaster.ru
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0285 ]   [ 17 queries used ]   [ Generated: 28.03.24, 15:28 GMT ]