我有一个应用程序,大部分是用猫头鹰写的。
我要在主猫头鹰窗口外打开新的vcl-窗口。
这很好,但是如果打开了一个对话框窗口(即使是使用ShowModal),并且我将另一个应用程序聚焦到另一个应用程序中,那么主窗口就会进入前台,但会被后面的窗口阻塞。
我想问题是缺少父母背景。
但是,我不能将owl的TWindow转换为vcl的TWinControl。
是否有将vcl的parent设置设置为owl的TWindow-Object的技巧?或者这是由完全不同的东西引起的?
编辑:我在用..。
void(TWindow* parent){
Form=new TForm((HWND)parent->Handle);
Form->ParentWindow=parent->Handle;
Form->BorderIcons >> biMinimize >> biMaximize << biSystemMenu; //No minimize, no maximize, but close
Form->BorderStyle = bsSingle;
Form->Position = poMainFormCenter;
...
Form->ShowModal();...now。但是,新窗口被锁定,无法单击/关闭/切换到。我在使用ParentWindow时有什么遗漏吗?
EDIT2:我认为这可能是一个问题,它是一个TDecoratedMDIFrame,它是一个mdi-容器,所以我的对话框被当作mdi-子而不是一个正常的对话框.
发布于 2014-09-03 00:00:14
TWinControl具有一个ParentWindow属性,用于指定非VCL父窗口。
此外,在现代VCL版本中,您可以在显示VCL对话框时指定ParentWnd。
https://stackoverflow.com/questions/25622704
复制相似问题