伙计们,我想知道是否有人知道在关闭所有 MDI 表单时我可以拦截的任何事件或方法。
示例:
我想在我的主窗体中实现一个事件,当我关闭所有 MDI 窗体时,会触发这样一个事件。
如果有人可以提供帮助,将不胜感激。
最佳答案
MDI 子窗体(实际上是任何窗体)在被销毁时会通知主窗体。您可以使用此通知机制。例子:
type
TForm1 = class(TForm)
..
protected
procedure Notification(AComponent: TComponent; Operation: TOperation);
override;
..
procedure TForm1.Notification(AComponent: TComponent; Operation: TOperation);
begin
inherited;
if (Operation = opRemove) and (AComponent is TForm) and
(TForm(AComponent).FormStyle = fsMDIChild) and
(MDIChildCount = 0) then begin
// do work
end;
end;
关于forms - 所有 mdi 表单关闭时的事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18601431/