1、 新闻建建MFC应用程序向导应用程序向导 For: 新闻选择应用程序类型窗口选择应用程序类型窗口For: 新闻选择用户界面功能窗口选择用户界面功能窗口For: 新闻设置高级功能窗口设置高级功能窗口For: 新闻“生成的类生成的类”窗口窗口For: 新闻3.1.2 设计对话框界面设计对话框界面For: 新闻从工具箱中向窗体上添加控件从工具箱中向窗体上添加控件For: 新闻3.1.3 添加对话框添加对话框For: 新闻3.1.4 为对话框绑定类为对话框绑定类p右键单击对话框设计界面的空白处,在快捷菜单中右键单击对话框设计界面的空白处,在快捷菜单中选择选择“添加类添加类”,打开,打开“MFCMFC类
2、向导类向导”对话框,如图对话框,如图3.103.10所示。所示。 新闻1添加消息处理程序添加消息处理程序p切换到对话框设计界面,切换到对话框设计界面,在属性窗口中单击消息图在属性窗口中单击消息图标标 ,可以查看到对话框,可以查看到对话框中的消息,如图中的消息,如图3.123.12所示。单击消息右侧的下拉框可单击消息右侧的下拉框可以在对话框中添加消息对以在对话框中添加消息对应的处理程序。应的处理程序。 新闻2重写重写CDialog类的函数类的函数p对话框类是对话框类是CDialogCDialog的派生类,它可以重写的派生类,它可以重写CDialogCDialog类的成员函类的成员函数,实现特定的
3、功能。在数,实现特定的功能。在Visual StudioVisual Studio的系统菜单中依次选择的系统菜单中依次选择“视图视图”/“类视图类视图”,可以打开类视图,如图,可以打开类视图,如图3.133.13所示。p在类视图中选中对话框类,在属性窗口中单击在类视图中选中对话框类,在属性窗口中单击“重写重写”图标图标 ,可以查看和设置需要重写的函数,如图可以查看和设置需要重写的函数,如图3.143.14所示。 新闻3打开对话框打开对话框在程序中可以使用在程序中可以使用CDialog:DoModal()CDialog:DoModal()函数打开一个模式对话框,并返回函数打开一个模式对话框,并返
4、回用户操作的结果。假定对话框对应的类为用户操作的结果。假定对话框对应的类为CMyDialogCMyDialog,则使用下面的代,则使用下面的代码如下打开该对话框。码如下打开该对话框。CMyDialog dlg;dlg.DoModal();当无法创建对话框或者用户关闭对话框时,当无法创建对话框或者用户关闭对话框时,DoModal()DoModal()函数会返回一个函数会返回一个intint类型的值,具体说明如下:类型的值,具体说明如下:p-1-1,表示无法创建该对话框。,表示无法创建该对话框。pIDABORTIDABORT,表示用户单击对话框中的,表示用户单击对话框中的“终止终止”按钮,关闭对话
5、框。按钮,关闭对话框。pIDOKIDOK,表示用户单击对话框中的,表示用户单击对话框中的“确定确定”按钮,关闭对话框。pIDCANCELIDCANCEL,表示用户单击对话框中的,表示用户单击对话框中的“取消取消”按钮,关闭对话框。 新闻3.2 常用控件常用控件3.2.1 3.2.1 静态文本框控件静态文本框控件3.2.2 3.2.2 文本编辑框控件文本编辑框控件3.2.3 3.2.3 按钮控件按钮控件3.2.4 3.2.4 单选按钮控件单选按钮控件3.2.5 3.2.5 复选框控件复选框控件3.2.6 3.2.6 列表框控件列表框控件3.2.7 3.2.7 组合框控件组合框控件3.2.8 IP
6、3.2.8 IP地址框控件地址框控件3.2.9 3.2.9 列表控件列表控件3.2.10 CImageList3.2.10 CImageList类类3.2.11 3.2.11 常用控件应用示例常用控件应用示例For: 新闻3.2.1 静态文本框控件静态文本框控件For: 新闻静态文本框控件的重要属性静态文本框控件的重要属性属属 性性说说 明明Align Text指指定定文文本本的的对对齐齐方方式式,包包括括左左对对齐齐(Left,默默认认值值)、居居中中对对齐齐(Center)和右对齐()和右对齐(Right)Border指定控件是否有边框指定控件是否有边框Caption控件显示的文本控件显示
7、的文本Client Edge指定控件是否具有带凹陷边缘的边框指定控件是否具有带凹陷边缘的边框Disabled指定是否禁用控件指定是否禁用控件Modal Frame指定控件是否具有双边框指定控件是否具有双边框No Wrap指定文本不换行指定文本不换行Simple指定文本为单行左对齐文本指定文本为单行左对齐文本Static Edge指定控件是否具有三维边框指定控件是否具有三维边框Sunken指定控件是否具有半凹陷边框指定控件是否具有半凹陷边框Transparent指定控件是否支持透明背景指定控件是否支持透明背景Visible指定控件最初是否可见指定控件最初是否可见Word Ellipsis指指定定
8、截截断断在在控控件件矩矩形形中中放放不不下下的的任任何何字字符符,并并在在结结尾尾处处添添加加省省略略号号For: 新闻3.2.2 文本编辑框控件文本编辑框控件For: 新闻文本编辑框控件的重要属性文本编辑框控件的重要属性属性属性说明说明Align Text指指定定文文本本的的对对齐齐方方式式,包包括括左左对对齐齐(Left,默默认认值值)、居居中中对对齐齐(Center)和右对齐()和右对齐(Right)Auto HScroll当用户在行尾键入字符时,自动使文本滚动到左侧当用户在行尾键入字符时,自动使文本滚动到左侧LowerCase在编辑控件中键入字符时,将所有字符转换为小写在编辑控件中键入
9、字符时,将所有字符转换为小写MultiLine如果控件文本对控件的宽度而言太长,则将文本以多行显示如果控件文本对控件的宽度而言太长,则将文本以多行显示No Hide Selection指定编辑控件总是显示选定的内容,即使它没有焦点指定编辑控件总是显示选定的内容,即使它没有焦点Number只允许在编辑控件中输入数字只允许在编辑控件中输入数字Password对键入到编辑控件中的每个字符都显示星号(对键入到编辑控件中的每个字符都显示星号(*)Read Only不允许用户在编辑控件中键入或编辑不允许用户在编辑控件中键入或编辑文本文本UpperCase在编辑控件中键入字符时,将所有字符转换为大写在编辑控
10、件中键入字符时,将所有字符转换为大写Want Return指定编辑控件可以接收指定编辑控件可以接收Enter键键For: 新闻为文本编辑框控件添加变量为文本编辑框控件添加变量For: 新闻将文本编辑框对应变量的类别设置为将文本编辑框对应变量的类别设置为ValueFor: 新闻CEdit类的常用函数类的常用函数函函 数数说说 明明Create创建一个创建一个CEdit控件控件SetReadOnly设置文本为只读格式,不能编辑文本设置文本为只读格式,不能编辑文本SetSel选择编辑框中的文本范围选择编辑框中的文本范围GetSel获取用户在文本中的选择获取用户在文本中的选择GetLine获取控件中的
11、一行文本获取控件中的一行文本GetLineCount获取多行文本控件的文本行数获取多行文本控件的文本行数LimitText限制文本长度限制文本长度Clear清除选定的文本清除选定的文本For: 新闻GetDlgItem()函数函数p如果不希望将控件绑定到变量,也可以使用如果不希望将控件绑定到变量,也可以使用GetDlgItem()GetDlgItem()函数获函数获取指定控件的句柄,然后再设置控件的属性。取指定控件的句柄,然后再设置控件的属性。GetDlgItem()GetDlgItem()的函的函数原型如下:数原型如下:CWnd*GetDlgItem(CWnd*GetDlgItem(int
12、nID int nID)const;)const;p参数参数nIDnID表示控件的表示控件的IDID,返回结果为,返回结果为CWnd*CWnd*类型的控件句柄。使用类型的控件句柄。使用CWndCWnd类的一些成员函类的一些成员函For: 新闻3.2.3 按钮控件按钮控件For: 新闻按钮控件的重要属性按钮控件的重要属性属 性说 明Bitmap指定在按钮控件中显示位图,而不是文本Caption指定按钮控件中显示的文本Default Button指定控件是对话框的默认命令按钮Disabled指定最初禁用按钮控件Flat指定按钮控件的外观是二维的Icon指定在按钮控件中显示图标,而不是文本Multi
13、line如果控件文本对于控件的宽度而言太长,则将文本显示为多行For: 新闻添加添加按钮控件的按钮控件的事件处理代码事件处理代码For: 新闻【例【例3.1】在对话框中添加一个按钮,参照上面介绍的方法为该按钮添加单击事在对话框中添加一个按钮,参照上面介绍的方法为该按钮添加单击事件的处理程序,代码如下:件的处理程序,代码如下:void CMfcAppDlg:OnBnClickedButton1()void CMfcAppDlg:OnBnClickedButton1()AfxMessageBox(ClickMe);AfxMessageBox(ClickMe);要使上面程序通过编译,需要修改项目默认的字符集。在要使上面程序通过编译,需要修改项目默认的字符集。在Visual Visual StudioStudio的系统菜单中选择的系统菜单中选择“项目项目”/“属性属性”,打开项目属性对话,打开项目属性对话框。在左侧的列表中选择框。在左侧的列表中选择“配置属性配置属性”/“常规常规”,在右侧将字符,在右侧将字符集修改为集修改为“未设置未设置”,如图,如图3.233
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1