兄弟们快进来吧,救命了!(100分)

  • 主题发起人 主题发起人 zla
  • 开始时间 开始时间
Z

zla

Unregistered / Unconfirmed
GUEST, unregistred user!
今天要完成的任务:
工具栏,菜单栏的完善
标书制作
标书保存

var
FWordApp: OLEVariant;
begin
try
FWordApp:=CreateOleObject('Word.Application');
FWordApp.Visible:=True
except
Raise ENoWord2000.Create('需要安装Word2000程序');
end;
end;

我用如上的方法连接到了word,用这样的方法能做到使word在窗体
上显示吗,就象OLEContainer,但是我不想直接用OLEContainer创建
与word的连接(OLEContainer1.CreateobjectfromFile('c:/xx.doc')。
总之我想做的是用CreateOleObject('Word.Application')创建,用
OLEContaniner显示。





 
shellexcute或者winexce直接打開word
 
TO kouchun 如何使用shellexcute或者winexce直接打開word,谢谢。
 
我连接EXCEL都行,没试过WORD,不过我认为你的方法应该行,如果不行再看
加句:var
FWordApp: OLEVariant;
begin
try
FWordApp:=CreateOleObject('Word.Application');
FWordApp.Connect;
FWordApp.Visible:=True
except
Raise ENoWord2000.Create('需要安装Word2000程序');
end;
end;
 
zgt_zgt 您说的方法确实能调用word,但是用这种方法如何把word嵌入到窗体中呢,
 
如果只是显示的话,用个RICHEDIT 显示就行叻。操作和显示可以分开。
 
不知道你的用途是什么,可以用华表控件呀!
 
var
FWordApp: OLEVariant;
begin
try
FWordApp:=CreateOleObject('Word.Application');
FWordApp.Connect;
FWordApp.Visible:=True
except
Raise ENoWord2000.Create('需要安装Word2000程序');
end;
end;
仅仅这些代码不能运行啊?
是不是缺少了什么?
请指教!
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=737517
 
zla:
问你一个问题,你怎么这么多怪问题的?
答案:
我想做的是用CreateOleObject('Word.Application')创建,用
OLEContaniner显示。(不行,如果能行的话,也是通过oleContainer的方法建立)

shellexcute或者winexce直接打開word 并不是你想要的


 
用CreateOleObject会打开外部word程序,不会在olecontainer中显示.
如果要在你的程序中显示word文件,你可以用Olecontainer或webbrowser.
 
你这个需求有点无聊。

有一个办法,就是打开 word 后,利用 setparent API 来将 word 的父窗体设置为你的程序句柄。
 
workjie您能说的在详细一点吗,setparent应该如何用呢
 
workjie, 理论上可以,实际上也可以,我试过,但非常非常多的问题。实际上这样做也没有意义。

Windows.setParent

HWND SetParent(

HWND hWndChild, // handle of window whose parent is changing
HWND hWndNewParent // handle of new parent window
);
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部