MDI 选项卡式组

多个文档界面(MDI)选项卡式组功能使多个文档界面(MDI)应用程序能够在 MDI 工作区中显示一个或多个制表窗口(或选项卡式窗口组,称为 制表位组)。 选项卡式窗口可以垂直或水平对齐。 如果应用程序托管多个 MDI 选项卡式组,则组由拆分器分隔。

特点

以下是 MDI 选项卡式组的功能:

  • 应用程序可以动态创建选项卡式窗口。

  • 应用程序可以水平或垂直对齐选项卡式窗口。

  • 将用拆分器分隔选项卡式窗口组。 用户可以使用拆分器调整选项卡式组的大小。

  • 用户可以在组之间拖动单个选项卡。

  • 用户可以拖动单个选项卡以创建新组。

  • 用户可以使用快捷菜单移动选项卡或创建新组。

  • 应用程序可以保存并加载选项卡式窗口的布局。

  • 应用程序可以保存和加载 MDI 文档列表。

  • 应用程序可以访问各个选项卡式组并修改其参数。

使用 MDI 选项卡式组

以下是通常使用 MDI 选项卡式组执行的任务:

  • 若要为主框架窗口启用 MDI 选项卡式组,请调用 CMDIFrameWndEx::EnableMDITabbedGroups。 此方法的第二个参数是类的 CMDITabInfo 实例。 可以在调用 CMDIFrameWndEx::EnableMDITabbedGroups前使用默认参数或修改它们。

  • 若要在运行时修改 MDI 选项卡式组的属性,请创建或修改CMDITabInfo对象并再次调用CMDIFrameWndEx::EnableMDITabbedGroups

  • 若要获取 MDI 选项卡式窗口的列表,请调用 CMDIFrameWndEx::GetMDITabGroups

  • 若要在活动选项卡式组旁边创建新的 MDI 选项卡式组,请调用 CMDIFrameWndEx::MDITabNewGroup

  • 若要将输入焦点移动到选项卡式组的上一个或下一个窗口,请调用 CMDIFrameWndEx::MDITabMoveToNextGroup

  • 确定窗口是否是 MDI 选项卡式组调用 CMDIFrameWndEx::IsMemberOfMDITabGroup的成员。

  • 若要确定是否为主框架窗口启用了 MDI 选项卡或 MDI 选项卡式组,请调用 CMDIFrameWndEx::AreMDITabs。 若要仅确定是否启用了 MDI 选项卡式组,请调用 CMDIFrameWndEx::IsMDITabbedGroup

  • 若要在用户单击选项卡或将其拖动到另一个 MDI 选项卡组时显示快捷菜单,请在 -derived 类中CMDIFrameWndEx重写CMDIFrameWndEx::OnShowMDITabContextMenu。 如果未实现此方法,应用程序将不会显示快捷菜单。

  • 若要在应用程序中保存 MDI 选项卡式组的布局,请调用 CMDIFrameWndEx::SaveMDIState。 若要加载以前保存的 MDI 选项卡式组配置文件,请调用 CMDIFrameWndEx::LoadMDIState。 还可以调用这些方法来加载或保存 MDI 应用程序中打开的文档列表。 有关保存和加载 MDI 状态的详细信息,请参阅 CMDIFrameWndEx::LoadMDIState

另请参阅

用户界面元素
CMDIFrameWndEx 类
CMDIChildWndEx 类
CMDITabInfo 类