- 1、本文档共80页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 常用控件 7.1 常用控件 Windows常用控件有:静态控件(CStatic)、按钮(CButton)、编辑框(CEdit)、列表框(CListBox)、组合框(CComboBox)、滚动条(CScrollBar)、旋转按钮(CSpinButtonCtrl)及滑动条(CSliderCtrl)等 7.2 静态控件和按钮 1.静态控件(CStatic) 是用来显示一个字符串、框、矩形、图标、位图或增强的图元文件 。在对话框编辑器的控件工具栏中,属于静态控件的有:静态文本、组框和静态图片三种。其中静态图片控件的属性对话框,如下图所示。 静态图片属性和风格的各个项的含义如下表所示 2.按钮 在Windows中所用的按钮是用来实现一种开与关的输入,常见的按钮有三种类型:按键按钮、单选按钮、复选框按钮,如下图所示。 7.2.1单选、复选框按钮举例 如下图所示,字体选择为复选框,可以同时选定为隶书与大字体,而颜色变化只能选择一种。 (1)利用AppWizard建立MFC(exe)基于对话框的应用程序框架,工程名为:“单复选框”,删除默认的控件,添加表中的控件。如下所示。 (2)打开ClassWizard对话框的Member Variables选项卡,添加以下成员变量。 (3) 在ClassWizard的Message Maps选项卡中的Class name中选取CMyDlg类,分别选取表中的Object Ids及Messages消息,并编辑消息处理函数。 (4)添加代码 ①?在CMyDlg类中定义一个COLORREF类型的变量color,用于记录颜色变化和一个void Draw()函数。 ② 在构造函数CMyDlg中初始化变量color。 ③ 在”单复选框.cpp”文件中分别为单选框、复选框添加代码。 如左所示 ④ 编写CMyDlg类的成员函数。 ⑤ 检验结果。 7.3 编辑框 编辑控件(Edit)是一个让用户从键盘输入和编辑文本的矩形窗口,用户可通过它,很方便地输入各种文本、数字或者口令,也可使用它来编辑和修改简单的文本文件内容。 1.编辑控件的属性和风格:如下图所示。 编辑控件的属性对话框中各项的含义 如下表所示。 2.编辑框的基本操作 (1)文本、数字的设置和读取。用户需要使用DDV和DDX技术 。方法是使用ClassWizard的Member Variables,在Contro1 IDs列表中,双击所要关联的控件ID,即可弹出Add Member Variable对话框。在Control IDs列表中出现刚才添加的内容,而在对话框的下方则要求用户输入变量的范围,如下图所示。 例如,若为编辑控件添加成员变量m_Edit,类型为CString,字串长度为20,则在DoDataExchange虚函数体中存在下列代码: (2)口令设置。缺省的口令字符是“*”,应用程序可以用成员函数Cedit∷SetPasswordChar来定义自己的口令字符,其函数原型如下: void SetPasswordChar(TCHAR ch); 参数ch表示设定的口令字符。 (3)选择文本 。通过调用成员函数Cedit∷SetSel来实现。这个函数确定了编辑框内文本的选择范围,与该函数相对应的还有Cedit∷GetSel和Cedit∷ReplaceSel,它们分别用来获取编辑控件中前一选择的开始和结束的位置以及替换被选择的文本。 (4)设置编辑框的页面边距。通过调用成员函数Cedit∷SetMargins来实现,这个函数的原型如下: void SetMargins(UINT nleft,UINT nRight); 参数nLeft和nRight分别用来指定左、右边距的像素宽度。 3.编辑控件的通知消息 当编辑控件的文本修改或者被滚动时,会向其父窗口发送一些消息,如下表所示。 4.应用举例 本例将用到静态文本、组框、编辑框以及按钮等控件,运行结果如下图所示。当用户在“语文”、“数学”编辑框中输入成绩后,单击“计算”按钮,将显示出这两个成绩的平均成绩。 具体步骤如下: (1)用MFC AppWizard(.exe)创建一个名为Ex1的基于对话框的应用程序。 (2)向应用程序中添加一个对话框资源,打开属性对话框将其字体设置为“宋体9号”(以后对话框的字体均作此设置),标题定为“使用编辑框”,ID号设为IDD_Ex1。 (3)用编辑器为对话框添加如下图所示的一些控件,ID号如下表所示。 (4)打开Class Wizard的Member Variables标签,在Class name中选择CEx1Dlg,选中所需的控件ID号,双击鼠标或单击Add Variable
您可能关注的文档
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch01.ppt
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch02.ppt
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch03.ppt
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch04.ppt
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch05.ppt
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch06.ppt
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch07.ppt
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch08.ppt
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch09.ppt
- Visual C# 2005程序设计教程 教学课件 作者 978 7 302 19477 4 ch10.ppt
- 法律科技人才培养策略2025年实施路径与效果评估.docx
- 洞察2025:中国化妆品原料国产化产业链技术创新与人才培养报告.docx
- 海洋工程装备制造技术创新与绿色产业发展融合报告.docx
- 海洋矿产资源勘探技术突破:2025年市场应用与政策影响报告.docx
- 海洋矿产资源勘探2025年海洋地质勘探技术绿色开采技术前瞻深度报告.docx
- 法律科技助力2025年知识产权保护的法律援助资源整合研究报告.docx
- 法律科技视角下2025年知识产权保护模式创新研究报告.docx
- 法律科技行业2025年人才培养需求与供给分析报告.docx
- 法律科技赋能知识产权保护2025年技术发展与市场拓展研究报告.docx
- 法治科技前沿:2025区块链在司法鉴定领域的应用创新报告.docx
文档评论(0)