我有一个主窗体 (MainForm) 和一个 MDI 子窗口 (TFormChild)。 我想创建多个 TFormChild 表单,但第一个表单必须以某种方式运行,因此我需要检测 TFormChild 窗口是否已存在。
我使用此代码,但它不起作用:
function FindChildWindowByClass(CONST aParent: HWnd; CONST aClass: string): THandle;
begin
Result:= FindWindowEx(aParent, 0, PChar(aClass), NIL);
end;
我这样调用它:
Found:= FindChildWindowByClass(MainForm.Handle, 'TFormChild')> 0;
最佳答案
在表单中,您可以引用 MDIChildCount 和 MDIChildren 属性。
例如:
var
i: integer;
begin
for i:= 0 to MainForm.MDIChildCount-1 do
begin
if MainForm.MDIChildren[i] is TFormChild then
...
end;
...
end;
关于delphi - 如何检查子窗口是否存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6844988/