delphi 将Word嵌入Delphi中  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 将Word嵌入Delphi中


unit Main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls,Comobj;
type
TForm1 = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Label1: TLabel;
Button1: TButton;
Button2: TButton;
Button3: TButton;
procedure Panel1Resize(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
FComApp:OleVariant;
gWaveHwnd:Hwnd;
public
{ Public declarations }
procedure SetParentWindow(pParent: TWinControl);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
var
Word : Variant;
begin
FComApp := CreateOLEObject('Word.Application');
FComApp.Documents.Open(extractfilepath(Application.ExeName)+'\test.doc',false);
FComApp.Visible := True;
Label1.Caption := FComApp.ActiveWindow.Caption;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
SetParentWindow(Panel1);
end;
procedure TForm1.Panel1Resize(Sender: TObject);
begin
if gWaveHwnd<>0 then
begin
FComApp.ActiveWindow.Height := Panel1.Height;
FComApp.ActiveWindow.Width := Panel1.Width;
Windows.MoveWindow(gWaveHwnd,0,0,Panel1.Width,Panel1.Height,false);
end;
end;
procedure TForm1.SetParentWindow(pParent: TWinControl);
var
lWaveHwnd : Hwnd;
lWidth, lHeight: Integer;
lWindowCaption: String;
begin
//lwaveHwnd := FindWindow(nil,'Microsoft Word');//窗口标题
lWindowCaption := FComApp.ActiveWindow.Caption;
lwaveHwnd := FindWindow(nil,pAnsiChar(lWindowCaption+' - Microsoft Word'));//窗口标题
//lwaveHwnd := FindWindowW(nil,pWideChar(String(FComApp.ActiveWindow.Caption)));//窗口标题
Windows.SetWindowLong(lWaveHwnd,GWL_STYLE,GetWindowLong(lWaveHwnd, GWL_STYLE)
and not (WS_CAPTION or WS_SYSMENU));
Windows.SetParent(lWaveHwnd,pParent.Handle);
gWaveHwnd:=lWaveHwnd;
lWidth := pParent.Width;
lHeight := pParent.Height;
Windows.MoveWindow(lWaveHwnd,0,0,lWidth,lHeight,false);
//mParent := pParent;
end;
end.

出处http://bigpower.blog.51cto.com/209892/90287


推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.059695959091187 seconds