对话框经常被使用,因为对话框可以从模板创建,而对话框模板是可以使用资源编辑器方便地进行编辑的。 模式和无模式对话框 对话框分两种类型,模式对话框和无模式对话框。 模式对话框 一个模式对话框是一个有系统菜单、标题栏、边线等的弹出式窗口。在创建对话框时指定WS_POPUP, WS_SYSMENU, WS_CAPTION和 DS_MODALFRAM...
CDialog();voidInitialize();virtualBOOL Create(LPCTSTR lpszTemplateName, CWnd* pParentWnd =NULL);virtualBOOL Create(UINT nIDTemplate, CWnd* pParentWnd =NULL);virtualBOOL CreateIndirect(LPCDLGTEMPLATE lpDialogTemplate, CWnd* pParentWnd =NULL,void* lpDialogInit =NULL);virtualBOOL CreateIndirect(HGLOBAL...
CDialog类 -父类是CWnd,本质上也是一个窗口。是对话框类的顶层父类。 CCommonDialog类 -父类是CDialog类。称为通用对话框。MFC提供了6个通用对话框,都是CCommonDialog类的子类,包括:文件对话框、颜色对话框、字体对话框、查找替换对话框、打印对话框、打印设置对话框。 CPropertyPage -父类是CDialog类,属性页对...
CDialog::GetDefID获取对话框的默认按钮控件的 ID。 CDialog::GotoDlgCtrl将焦点移动到对话框中的指定对话框控件。 CDialog::InitModalIndirect从内存中的对话框模板创建模式对话框(不是基于资源)。 参数被存储,直到调用函数DoModal。 CDialog::MapDialogRect将矩形的对话框单位转换为屏幕单位。
对话框与普通窗口的区别仅在于,对话框是通过对话框模板建立起来的。只需要一个以模板为实参的创建命令,如CDialog::Create(),就可以完成对话框窗口及其子控件的创建工作,所有创建细节都由对话框模板来指示。而对于普通窗口,窗口及其包含的子控件必须逐一创建,而且要指
CWnd::UpdateData在执行模式对话框或无模式对话框的过程中,您可以随时调用。 如果手动开发一个对话框,则需要自行向派生对话框类添加必要的成员变量,并添加成员函数以设置或获取这些值。 当用户按 “确定” 或 “取消” 按钮时,或者当你的代码调用成员函数时,模式对话框将自动关闭EndDialog。
CDialog::CDialog 构造CDialog 对象。 公共方法 展开表 名称 说明 CDialog::Create 初始化 CDialog 对象。 创建无模式对话框并将它附加到 CDialog 对象。 CDialog::CreateIndirect 在内存(基于的不是资源从创建对话框模板的无模式对话框)。 CDialog::DoModal 调用模式对话框并返回,在执行。 CDialog::EndDialog...
在MFC中创建可调整大小的CDialog,可以按照以下步骤进行: 创建一个新的对话框类,可以通过Visual Studio的MFC Class Wizard工具来创建一个新的对话框类,也可以手动创建一个新的对话框类。 在新的对话框类中,重写OnInitDialog函数,并在其中设置对话框的大小和位置。 在对话框的资源文件中,设置对话框的大小和位置...
Call to convert the dialog-box units of a rectangle to screen units.Копировать void MapDialogRect( LPRECT lpRect ) const; ПараметрыlpRect Points to a RECT structure or CRect object that contains the dialog-box coordinates to be converted....