- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第04讲C编辑框
* 编辑框控件 编辑框在Windows风格的应用程序中是随处可见的,当需要获得来自用户的文本信息,或者要让用户输入或编辑文本时,应该使用编辑控件。 一、简介 编辑框控件具有许多功能,Windows中的记事本(Notepad)应用程序就是一个带有控件菜单的编辑控件 二、编辑控件的应用 单击Showl,则在Edit1编辑框中显示“This is the first EditBox.” 单击Clear1,则Edit1编辑框中的内容被清除; 单击Show2,则在Edit2编辑框中显示“This is the second EditBox!” 单击Clear2,则Edit2编辑框中的内容被清除; 单击Transfer,则把Edit1编辑框的内容复制到Edit2的编辑框中去 单击Undo,则取消上一次操作 若单击Exit,则退出程序的运行 利用控件窗口中的编辑框控件,在对话框中布置如右图所示的编辑框 设置成员变量名为m_Edit1,类别为Control,变量类型为CEdit 注意,不要将m_Edit1设为CString类型,因为只有设为CEdit 类型,才能够调用CEdit 类中的一些成员函数,如Copy () , Paste () 等,这样才能完成本应用程序中对Transfer按钮要求复制内容的操作的响应 ? 用同样的方法给编辑框EDIT2等其它对象连接各自的变量,增加变量之后MFC ClassWizard窗口将变为下图所示 若此时运行该程序,在Edit文本框中不能进行多行输入,只能单行输入文本,而且按回车键终止应用程序,同时,文本框中也没有水平和垂直滚动条。 下面,我们来完善应用程序中编辑框的特性,使之能够进行多行文本的输入 在编辑框EDIT1 单击鼠标右键 在快捷菜单中选Properties命令 选Styles选项卡 可进行多行输入 增加水平及垂直滚动条 如果不选择这一项的话,在编辑框中按回车键就会终止应用程序,若选此项,按回车键就可进行下一行的输入,实现多行文本的输入 4 修改编辑框的特性 5 添加代码 1. 在按钮Showl上单击鼠标右键,在弹出的快捷菜单中选择ClassWizard 2.选择IDC_SHOW1_BUTTON项 3. 选择BN_CLICKED项 4. 单击 5. 在弹出的Add Member Function中接受建议的函数名OnShow1Button() 6.Member functions列表框中增加了成员函数OnShow1Button() 7. 单击 void CEditBoxDlg::OnShow1Button() { m_Edit1.SetSel(0,-1);//选中编辑框IDC_EDIT1中的全部内容 m_Edit1.ReplaceSel(“This is the first EditBox.”); } //void SetSel( int nStartChar, int nEndChar, BOOL bNoScroll = FALSE ); nStartChar Specifies the starting position. If nStartChar is 0 and nEndChar is –1, all the text in the edit control is selected. If nStartChar is –1, any current selection is removed. nEndChar Specifies the ending position. bNoScroll Indicates whether the caret should be scrolled into view. If FALSE, the caret is scrolled into view. If TRUE, the caret is not scrolled into view. (1) 给Showl按钮连接代码 (2) 给 Clear1按钮连接代码 Void CEditBoxDlg::OnClearlButton() { m_Editl.SetSel(0,-1);//表示选中编辑框IDC_EDIT1中的全部内容。 m_Editl.ReplaceSel();//用空字符串代替所选中的文本,即把所选的文本删除掉 // 代码编写结束 } (3)给Show2和Clear2按钮连接代码 Void CEditBoxDlg::OnShow2Button() { m_Edit2.SetSel(0,-1);表示选中编辑框IDC_EDIT2中的全部内容。 m_Edit2.ReplaceSel(Thi
文档评论(0)