我有一个功能可以关闭应用程序中除主表单之外的所有表单
procedure CloseOpenForms(const Component: TComponent);
var
i: Integer;
begin
for i := 0 to pred(Component.ComponentCount) do
begin
CloseOpenForms(Component.Components[i]);
if Component.Components[i] is TForm then
begin
TForm(Component.Components[i]).OnCloseQuery := nil;
TForm(Component.Components[i]).Close;
end;
end;
end;
从主窗体调用:
CloseOpenForms(Self);
只要没有活动的 OLE 对话框(例如 TJvObjectPickerDialog),它就可以正常工作。
如何强制关闭这些非模式 OLE 对话框?