【发布时间】:2023-03-11 13:51:01
【问题描述】:
我将如何在 Delphi 7 的 MDI 应用程序的 Windows 菜单中实现 Ctrl+F6 Next Window 操作?
【问题讨论】:
-
Ummm .. 我在回答中就是这样告诉你的。然后,您在原始帖子中添加了“在 Windows 菜单中”。再一次,我已经在我的回答中给你了。我在这里缺少什么吗?
我将如何在 Delphi 7 的 MDI 应用程序的 Windows 菜单中实现 Ctrl+F6 Next Window 操作?
【问题讨论】:
使用 MDI 父窗口的 Next 和 Previous 方法。您可以从菜单事件中执行此操作,并像任何其他菜单项一样分配快捷方式。在下面的代码中,MDI 父窗体是 TFormMDIParent,它假定您创建了两个标题为“Next Child”和“Previous Child”的菜单项,并将它们的名称设置为 IDE 生成的默认值。它还假定您已将主窗体正确设置为 MDI 父窗体 (FormStyle = fsMDIForm)。
procedure TFormMDIParent.NextChild1Click(Sender: TObject);
begin
Self.Next;
end;
procedure TFormMDIParent.PreviousChild1Click(Sender: TObject);
begin
Self.Previous;
end;
【讨论】:
我认为您不需要做任何事情 - 它隐含在 MDI 应用程序中(无论如何都是使用 Delphi 2006 中的新 MDI 应用程序向导创建的)。
它也可以在最初在 Delphi 6 中创建的应用程序中“正常工作”。
【讨论】:
向主窗体发送wm_SysCommand 消息。 wParam 参数使用sc_NextWindow 或sc_PrevWindow。
【讨论】: