我在AcitiveForm中的OleContainer创建Word.Document,提示“Cannot focus a disable or invisibl

  • 主题发起人 主题发起人 cushaw
  • 开始时间 开始时间
C

cushaw

Unregistered / Unconfirmed
GUEST, unregistred user!
我在AcitiveForm中的OleContainer创建Word.Document,提示“Cannot focus a disable or invisible window”,怎么回事?(100分)<br />我用的是Delphi 7 + OfficeXP + IE 6.0。

我的ActiveForm上只有一个OleContainer,然后在OnCreate事件用以下语句创建了一个Word文档:

OLEContainer.CreateObject('Word.Document', False);
OLEContainer.DoVerb(ovShow);

放到IE里测试时,系统会弹出一个窗口提示“Cannot focus a disable or invisible window”。
其他一切正常。

我试着在Form上放了个按钮,把创建Word文档的代码放到按钮的点击事件里,就一切正常。估计是因为创建OLE对象太早的缘故。

有谁知道怎样处理这个问题吗?

 
是不是 OLEContainer.DoVerb(ovShow);的原因
放在别的地方试试吧
 
放到哪个地方试呢?
 
我现在用了个权宜的办法,在Form上放了个Timer,CreateObject后先不Show,等过一秒在执行OLEContainer.DoVerb(ovShow);
凑和能用了

继续征求更好的答案!
 
Form.onShow
我试了一下没问题
 
ActiveForm没有OnShow事件 :(
我就是在把普通Form的项目转到ActiveForm上来。
 
把代码放到Initialize这个事件中会怎么样呢
 
后退
顶部