多文档接口

[许多新用户和中间用户发现很难学习使用 MDI 应用程序。 因此,应考虑用户界面的其他模型。 但是,可以将 MDI 用于不容易适应现有模型的应用程序。]

MDI) (多文档接口是一种规范,它为使用户能够同时处理多个文档的应用程序定义用户界面。

本节内容

主题 说明
关于多文档接口 介绍多文档接口。
使用多文档接口 说明如何执行与多文档界面关联的任务。
MDI 参考 包含 API 引用。

MDI 函数

名称 说明
CreateMDIWindow 创建 MDI 子窗口。
DefFrameProc 为 MDI 框架窗口的窗口过程不处理的任何窗口消息提供默认处理。 窗口过程未显式处理的所有窗口消息都必须传递到 DefFrameProc 函数,而不是 DefWindowProc 函数。
DefMDIChildProc 为 MDI 子窗口的窗口过程不处理的任何窗口消息提供默认处理。 窗口过程未处理的窗口消息必须传递到 DefMDIChildProc 函数,而不是 DefWindowProc 函数。
TranslateMDISysAccel 处理与指定 MDI 客户端窗口关联的 MDI 子窗口的窗口菜单命令的加速器击键。 函数将 WM_KEYUPWM_KEYDOWN 消息转换为 WM_SYSCOMMAND 消息,并将其发送到相应的 MDI 子窗口。

MDI 消息

名称 说明
WM_MDIACTIVATE 发送到 MDI 客户端窗口,以指示客户端窗口激活其他 MDI 子窗口。
WM_MDICASCADE 发送到 MDI 客户端窗口,以级联格式排列其所有子窗口。
WM_MDICREATE 发送到 MDI 客户端窗口以创建 MDI 子窗口。
WM_MDIDESTROY 发送到 MDI 客户端窗口以关闭 MDI 子窗口。
WM_MDIGETACTIVE 发送到 MDI 客户端窗口以检索活动 MDI 子窗口的句柄。
WM_MDIICONARRANGE 发送到 MDI 客户端窗口,以排列所有最小化的 MDI 子窗口。 它不会影响未最小化的子窗口。
WM_MDIMAXIMIZE 发送到 MDI 客户端窗口以最大化 MDI 子窗口。 系统会调整子窗口的大小,使其工作区填充客户端窗口。 系统将子窗口的窗口菜单图标置于框架窗口菜单栏的最右侧位置,并将子窗口的还原图标放在最左侧的位置。 系统还会将子窗口的标题栏文本追加到框架窗口的标题栏文本。
WM_MDINEXT 发送到 MDI 客户端窗口以激活下一个或上一个子窗口。
WM_MDIREFRESHMENU 发送到 MDI 客户端窗口以刷新 MDI 框架窗口的窗口菜单。
WM_MDIRESTORE 发送到 MDI 客户端窗口,以从最大或最小化的大小还原 MDI 子窗口。
WM_MDISETMENU 发送到 MDI 客户端窗口以替换 MDI 框架窗口的整个菜单和/或替换框架窗口的窗口菜单。
WM_MDITILE 发送到 MDI 客户端窗口,以平铺格式排列其所有 MDI 子窗口。

MDI 结构

名称 说明
MDICREATESTRUCT 包含有关 MDI 子窗口的类、标题、所有者、位置和大小的信息。