第五章 对话框和常用控件 对话框是Windows 应用程序中最重要的用户界面元素之一,是与用户交互的重要手段,在程序运行过程中,对话框可用于扑捉用户的输入信息或数据。对话框是一个特殊类型的窗口,任何对窗口进行的操作(如:移动、最大化、最小化等)都可在对话框中实施,一般来说,在对话框中通过各种控件(如:按钮、编辑框、列表框、组合框等)来和用户进行交互。控件是在系统内部定义的用于和用户交互的基本单元。 一、对话框的使用 Visual C++提供的对话框编辑器能“可视”地进行设计、编辑,并可用 ClassWizard 为对话框从 CDialog 基类中派生一个类,MFC 的CDialog 类封装了用于对话框的显示、关闭等操作的许多功能函数,例如:DoModal 函数用来显示模式对话框并返回用户操作的结果。 1 、模式对话框(为 1 8 6 附加举例页) 所谓模式对话框是指,当对话被弹出时,用户必须在对话框中进行相应的操作,在退出对话框之前,对话框所在的应用程序不能继续执行。平常我们所见到的对话框大多是模式对话框。 例:模式对话框(通过菜单命令弹出) 1) 建一个单文档(SDI)应用程序 2) 创建对话框模板 InsertResource选中Dialog单击 New 拖过一个静态文本,鼠标对准它,按右键点 properties 改标题为“新建模式对话框”。 3)鼠标右键对准对话框的任何位置单击,选择 properties 选项,设置 ID 为 IDD_MYDIALOG 4)给对话框创建类 双击新建对话框的任何位置,单击 OK,写类名为“CMyDlg”,保 证” CDialog” 作为该类的基类。 5)创建菜单命令: a) 打开资源编辑器的菜单项 Menu b) 双击 IDR_MAINFRAME c) 双击右边空白菜单,点开 pop_up(让它是空白),在名字处写” 弹出对话框(&A)” ,ID处写 ID_PUPDIALOG 6)将菜单命令连接到主框架程序中,完成 ID_PUPDIALOG 的消息映射: ViewClassWizard保证 Class name 里是CMainFrame,在ObjectIDs 里找到 ID_PUPDIALOG 点黑Messages 里(右边)点 COMMAND 建立主框架对象方法并加代码: void CMainFrame::OnPupdialog() { CMyDlg MyDlg; MyDlg.DoModal(); //DoModal()是CDialog 类成员函数,通过调用该 //函数将显示对话框。 } 7)在CMainFrame.cpp 文件里加: #include “ MyDlg.h” // 之后运行。 2 、无模式对话框(为 1 8 6 附加页) 非模式对话框,弹出后,可一直保留在屏幕上,用户可...