通过 MDI ParentForm 上的 TMenuItem 从另一个 MDI ChildForm 的 TButton 打开 MDI ChildForm 时出错
Error on opening an MDI ChildForm from another MDI ChildForm's TButton via TMenuItem on MDI ParentForm
我有 2 个 MDIChild 窗体和一个带有 TMainMenu 的 MDIParent 窗体。在 TMainMenu 中,我有以下 TMenuItem.OnClick 打开 ChildForm2 的过程:
procedure TfrmMain.miOpenChildForm2Click(Sender: TObject);
begin
TfrmChildForm2.Create(self).Show;
end;
现在,我想通过下面的 TButton.OnClick 过程从 ChildForm1 访问上述过程:
procedure TfrmChildForm1.btnOpenChildForm2Click(Sender: TObject);
begin
frmMain.miOpenChildForm2Click; // Error Here: E2035 Not enough actual parameters
End;
我在上面的第二个过程中遇到错误:
E2035 Not enough actual parameters
我不知道在哪里更正它。我尝试将“()”放在过程调用的末尾,但无济于事。
程序定义
procedure TfrmMain.miOpenChildForm2Click(Sender: TObject);
告诉您过程需要接收类型 TObject
的参数 Sender
。使用 frmMain.miOpenChildForm2Click;
调用它不会传递该参数。该参数不是可选的。
Sender
旨在告诉您是什么触发了事件,以便在重要的情况下使用,例如当您对多个控件使用一个事件处理程序时。它允许您区分事件调用的来源。
您可以使用调用中点击的按钮或菜单项作为参数
frmMain.miOpenChildForm2Click(btnOpenChildForm2);
如果调用来自哪里并不重要,您可以传递 nil
而不是
frmMain.miOpenChildForm2Click(nil);
请注意:MDI 已被弃用至少十年,并且 Windows 至少在那么长时间内没有得到太多支持。现代应用程序不使用 MDI,新开发很可能也不应该包括它。
我有 2 个 MDIChild 窗体和一个带有 TMainMenu 的 MDIParent 窗体。在 TMainMenu 中,我有以下 TMenuItem.OnClick 打开 ChildForm2 的过程:
procedure TfrmMain.miOpenChildForm2Click(Sender: TObject);
begin
TfrmChildForm2.Create(self).Show;
end;
现在,我想通过下面的 TButton.OnClick 过程从 ChildForm1 访问上述过程:
procedure TfrmChildForm1.btnOpenChildForm2Click(Sender: TObject);
begin
frmMain.miOpenChildForm2Click; // Error Here: E2035 Not enough actual parameters
End;
我在上面的第二个过程中遇到错误:
E2035 Not enough actual parameters
我不知道在哪里更正它。我尝试将“()”放在过程调用的末尾,但无济于事。
程序定义
procedure TfrmMain.miOpenChildForm2Click(Sender: TObject);
告诉您过程需要接收类型 TObject
的参数 Sender
。使用 frmMain.miOpenChildForm2Click;
调用它不会传递该参数。该参数不是可选的。
Sender
旨在告诉您是什么触发了事件,以便在重要的情况下使用,例如当您对多个控件使用一个事件处理程序时。它允许您区分事件调用的来源。
您可以使用调用中点击的按钮或菜单项作为参数
frmMain.miOpenChildForm2Click(btnOpenChildForm2);
如果调用来自哪里并不重要,您可以传递 nil
而不是
frmMain.miOpenChildForm2Click(nil);
请注意:MDI 已被弃用至少十年,并且 Windows 至少在那么长时间内没有得到太多支持。现代应用程序不使用 MDI,新开发很可能也不应该包括它。