- 1、本文档共64页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
§3 常用控件 ●静态控件 ●编辑框控件 ●按钮控件 ●列表框和组合框控件 ●滚动条控件 3.1 静态控件 静态控件的基类是CStatic。所谓“静态”,是指这类控件只能用于输出信息,而不能接收用户的输入信息,也不会产生任何消息。静态控件对象的ID值都默认为:IDC_STATIC。 有三种标准的静态控件:静态文本框(Static Text)、组框(Group Box)和图片框(Picture)。 (1)静态文本框用于显示文本,主要起标注作用。“标题”(Caption)是其最重要的属性,标题值就是需显示的文本。 (2)组框用于控件分组,使界面对象的功能从视觉上进行区分,主要用于对单选按钮进行分组。主要属性就是“标题”。 (3)图片框有三个重要的属性: ■Type(类型):图片类型可选择Icon(图标)、Bitmap(位图)、Enhanced Metafile(增强图元文件)、Frame(框架)、Rectangle(矩形区域)等。 ■Image(图象):当图片类型为Icon或Bitmap时,通过此属性可以指定资源的ID(在Windows程序设计中,资源也是对象)。如果要在设计阶段把外部的图象插入到图片控件,则先要把外部的图象文件导入工程,才能成为可用资源。 ■Color(颜色):设置Frame的边框颜色或Rectangle的填充色。可选的颜色有break(黑)、while(白)、gray(灰)或者etched(有3D外观的腐蚀色)。 3.2 编辑框控件 编辑框(Edit Box)也称文本框,MFC的Cedit类封装了编辑框控件。 编辑框实际上是一个简易的文本编辑器,用户可以在编辑框中输入并编辑文本。 编辑框控件的主要属性 ■Align text 文本对齐方式,其值可以是Left、Right、Center(居中)。 ■Multiline 多行文本,默认是FALSE(单行)。 ■Number 只接受数字符号。 ■Horizontal scroll 添加水平滚动条,只对多行文本有效。 ■Vertical scroll 添加垂直滚动条,只对多行文本有效。 ■Password 屏蔽用户输入的信息,用特定字符统一显示,默认字符是 *。 【Case2】密码输入 Step1:建立工程架构 使用MFC AppWizard建立一个对话框工程, 工程名为:casePW Step2:设计窗口界面 使用对话框编辑器设计工程的窗口界面,如图22所示。各控件的属性设置如下: 控件名 ID 标题 其他属性 编辑框 IDC_EDIT1 密码 静态文本 IDC_STATIC1 输入密码: 居中 静态文本 IDC_STATIC2 居中,Client edge 命令按钮 IDC_BUTTON1 确定 命令按钮 IDC_BUTTON2 退出 Step3:设计消息处理成员函数 使用MFC Class Wizard设计成员变量和消息处理函数。 (1)为对话框设置绑定相关控件的2个成员变量 控件名 成员变量名 变量类型 字符个数 IDC_EDIT1 m_pwd Value , Cstring 6 IDC_STATIC2 m_OK Value , Cstring 20 (2)建立“确定”按钮的BN_CLICKED消息处理函数OnButton1( ),用于接收用户输入,检测密码的合法性。 为OnButton1()添加的代码如下: //TODO Add your control notification handler code here UpdateDtata(); //控件数据传递给成员变量 if(m_pwd==”pwd123”) m_OK=”密码正确!”; else m_OK=”密码错误!”; UpdateData(FALSE); //成员变量中的数据传递给控件 (3)建立“退出”按钮的BN_CLICKED消息处理函数OnButton2( ),用于结束工程的运行。 为OnButton2()添加的代码如下: //TODO Add your control notification handler code here EndDialog(1); Step4:工程的编译、链接和运行 运行结果如图23所示。
文档评论(0)