CMDIFrameWnd 类

CMDIFrameWnd

CObject
└CCmdTarget
└CWnd
└CFrameWnd
└CMDIFrameWnd

CMDIFrameWnd类提供了Windows多文档界面(MDI)子窗口的功能和管理窗口的功能。
为了为应用创建有用的MDI子窗口,需要从CMDIFrameWnd派生类。
为派生类增添成员变量,从而为应用存储指定的数据。实现消息处理的成员函数,并在派生类中实现消息映射,以便于指出当消息传递给窗口后,将发生什么事情。
可以通过MDI调用Create函数或CMDIFrameWnd的LoadFrame函数来构造MDI子窗口。
在调用Create或LoadFrame之前,必须使用C++的new操作符在堆中构造框架窗口对象。在调用Create函数之前,必须使用AfxRegisterWndClass全局函数来登记窗口类,从而为框架设置图标或类的风格。
使用Create成员函数,用于传递作为即时参数的框架创建参数。
LoadFrame需要的参数比Create少,不过,它需要资源更多的缺省值,包括框架的标题、图标、加速表和菜单。为了LoadFrame函数的使用,所有的资源必须有相同的资源ID 号(例如, IDR_MAINFRAME)。
尽管MDIFrameWnd由CFrameWnd类派生,但由CMDIFrameWnd派生的框架窗口不必由DECLARE_DYNCREATE来声明。
CMDIFrameWnd类从CFrameWnd类中继承了大部分缺省用法。如果需要这些功能的详细情况,请参考CFrameWnd类的描述。CMDIFrameWnd拥有下列额外的功能: · MDI框架窗口用于管理MDICLIENT窗口,并在其与控件栏的结合中复位。MDI客户窗口是MDI子框架窗口的直亲。WS_HSCROLL与WS_VSCROLL窗口风格指定了CMDIFrameWnd将应用于MDI客户窗口,而不是主框架窗口,这样用户就可以滚动MDI 客户区(例如,Windows的程序管理器)。
· 当没有活动的MDI子窗口时,MDI框架窗口拥有作为菜单条使用的缺省菜单。当有活动的MDI子窗口时,MDI框架窗口的菜单条由MDI子窗口的菜单所替换。
· 如果有MDI子窗口,那么MDI框架窗口则操作当前的MDI子窗口。例如,命令消息将于MDI框架窗口之前发送到MDI子窗口。
· MDI框架窗口拥有下列标准Windows菜单命令的缺省句柄:
·ID_WINDOWS_TILE_VERT
·ID_WINDOWS_TILE_HORZ
·ID_WINDOWS_CASCADE
·ID_WINDOWS_ARRANGE
· MDI框架窗口也有ID_WINDOWS_NEW功能,以用于在当前文档中创建新的框架或视图。应用可以覆盖这些缺省的命令操作,以用于定制 MDI窗口操作。
最好不要使用C++ delete操作符来删除框架窗口,相反,请使用CWnd::DestroyWindow函数。当销毁窗口时,PostNcDestroy的CFrameWnd命令将删除C++对象。当用户关闭框架窗口时,缺省的OnClose操作将调用DestroyWindow函数。
如果要了解有关CMDIChildWnd函数的更多信息,请参阅联机文档“Visual C++程序员指南”中的“框架窗口主题”。
#include
请参阅:CWnd, CMDIChildWnd
CMDIFrameWnd类的成员

类成员

CMDIFrameWnd类的成员


构造函数 CMDIFrameWnd 构造一个CMDIFrameWnd

操作 MDIActivate 激活一个不同的MDI子窗口
MDIGetActive 获取当前活动的MDI子窗口,并得到指示它是否最大化的标志
MDIIconArrange 重排所有最小化文档子窗口
MDIMaximize 最大化一个MDI子窗口
MDINext 激活紧跟在当前活动子窗口之后的子窗口,并把当前活动子窗口放到所有子窗口的最后
MDIRestore 将一个MDI子窗口从最大化或最小化状态恢复回来
MDISetMenu 重置一个MDI框架窗口的菜单,Window弹出菜单,或两者都重置
MDITile 将所有的子窗口以平铺方式排列
MDICascade 将所有的子窗口以级联方式排列

可覆盖的函数 CreateClient 为CMDIFrameWnd类创建Windows MDICLIENT窗口。通过CWnd类的OnCreate成员函数来调用
GetWindowMenuPopup 返回窗口的弹出菜单

 

构造函数

CMDIFrameWnd::CMDIFrameWnd

CMDIFrameWnd();

说明:
调用该函数来构造一个CMDIFrameWnd对象。调用Create或LoadFrame成员函数来创建可视的MDI框架窗口。

请参阅:CFrameWnd::Create, CFrameWnd::LoadFrame
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值