我的编程乐园
积累,坚持!
---------我是一只IT小小鸟
首页
新随笔
联系
聚合
管理
随笔-145 评论-173 文章-70 trackbacks-0
如何实现同步输入输出提示--
功能介绍:左边一个编辑框,输入,右边一个编辑框,输出。当输入超过100个字符时,提示信息。
核心代码:
void
CTest13Dlg::OnChangeEdit1()
{
//
TODO: If this is a RICHEDIT control, the control will not
//
send this notification unless you override the CDialog::OnInitDialog()
//
function and call CRichEditCtrl().SetEventMask()
//
with the ENM_CHANGE flag ORed into the mask.
//
TODO: Add your control notification handler code here
UpdateData(TRUE);
m_write
=
m_read;
UpdateData(FALSE);
}
void
CTest13Dlg::OnMaxtextEdit1()
{
//
TODO: Add your control notification handler code here
MessageBox(
"
本文本框只能输入100个字符
"
);
}
void
CTest13Dlg::OnButton1()
{
//
TODO: Add your control notification handler code here
CDialog::OnCancel();
}
截图部分:
两点,一点就是添加变量,实际上就是在ClassWard中的添加,这个已经熟悉。
另外一个就是输入100个的限制,看见下面的那个Maximum限制中的吗?填入100即可!(为了这个,可是找了好久才发现!)
再次强调UpdateData函数的作用:
1.参数为TRUE的时候,将控件内容传入变量。参数为FALSE的时候,将内容传递给控件。
2.实现之间的信息交换,因为是对于每一个控件(有关联的变量的),所以只要有消息,就会启动这个函数,实现读入,写出。
响应的消息:
1.EN_CHANGE,控件的内容只要变化,就响应相应的函数。
2.EN_MAXTEXT,控件的内容超过限制的时候,响应。
如何添加:
在上面CLASSWard中,选中控件,然后双击消息添加,同时会产生函数。
我的BUG:
我承认我很粗心,就是将这两个控件取名相反,然后照着书上的代码写,于是悲剧了,无法写入左边的编辑框。
为何?
因为那个函数使得每次左边的变化的时候,都要将右边的编辑框内容放入左边,于是从来都是空的,当然写不进去了。。
关键:
1.如何利用工具,特别是那些消息。如何响应,函数。。
2.细节。很多东西都帮我们做好了,所以需要注意。。。。
3.我觉得目前对于MFC的学习有了些理解,就是消息,函数,有控件,就有消息,就可以双击消息产生相应的函数来响应。只是不同的响应不同,从而决定了你细节方面不同,比如这里,就是利用那个UpdateData函数来实现。而设置大小也是细节。但是添加消息和函数的操作,则是基本动作,点击右边,消息,然后看看对应的控件,那些需要我们做的,然后去编写函数。
下载地址:
http://www.cppblog.com/Files/deercoder/test13.rar
posted on 2010-02-05 22:09
deercoder
阅读(456)
评论(0)
编辑
收藏
引用
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
网站导航:
博客园
IT新闻
BlogJava
知识库
博问
管理
坚持记录,笔耕不辍,笔记是最好的学习方法!
<
2010年2月
>
日
一
二
三
四
五
六
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(12)
给我留言
查看公开留言
查看私人留言
随笔分类
(87)
ACM(1)
Android(4)
C++(7)
CTeX和LateX(1)
Git(3)
Java(4)
MFC程序设计入门(8)
OpenCV(1)
Python(3)
Shell/Bash(1)
SQL(1)
Unix/Linux(23)
Vim(3)
大学公开课(3)
读书(4)
环境配置(1)
生活感悟/日记(18)
图像识别算法及原理(1)
随笔档案
(145)
2014年12月 (1)
2013年3月 (1)
2012年7月 (2)
2012年6月 (5)
2012年5月 (2)
2012年4月 (2)
2011年12月 (1)
2011年11月 (2)
2011年10月 (8)
2011年9月 (2)
2011年8月 (4)
2011年6月 (2)
2011年5月 (5)
2011年4月 (3)
2011年3月 (3)
2010年6月 (5)
2010年5月 (5)
2010年4月 (3)
2010年3月 (16)
2010年2月 (56)
2010年1月 (11)
2009年12月 (2)
2009年11月 (3)
2009年10月 (1)
文章分类
(70)
C/C++(14)
JAVA(6)
Linux/Unix(6)
MFC(5)
OpenCV / OpenGL(6)
编程体会和收获(3)
常见编译器错误解决办法(5)
深入理解计算机系统(2)
生活的体会和感悟(5)
实习/读研(1)
数据结构和算法分析(9)
杂谈(8)
文章档案
(70)
2011年11月 (1)
2011年10月 (1)
2010年3月 (8)
2010年2月 (2)
2010年1月 (3)
2009年12月 (21)
2009年11月 (26)
2009年10月 (5)
2009年9月 (3)
相册
computer picture
ACM与算法比赛
Google Code Jam
Top Coder
北大ACM
杭电ACM
LaTex和Tex学习
LaTex and Tex
Tex,LaTex,CTex学习
电子书下载
不错的电子书免注册下载
杂志下载(经济学人等)
联系方式
我的豆瓣主页
学习论坛
C++编程
VC知识库
超多C/C++资料和源码下载
科研小木虫
提问必答网站(牛人辈出啊!)
英语网站(长期学习)
New York Times
华尔街日报
记单词,捐大米
经济学英文网
普特网站
普特英语应用(有趣的学习)
译言网|译文库
中国日报
源码网站
codeproject
google代码搜索
programersheaven
sourceforge
程序员联合开发网
最新随笔
1. 此博客停止更新
2. Adboe Reader提示中文字体有问题
3. Python字符串换行处理
4. 如何转换^M行末符号
5. 斯坦福大学开放课程--编程范式(四)
搜索
积分与排名
积分 - 899058
排名 - 15
最新随笔
1. 此博客停止更新
2. Adboe Reader提示中文字体有问题
3. Python字符串换行处理
4. 如何转换^M行末符号
5. 斯坦福大学开放课程--编程范式(四)
最新评论
1. re: Git Stash用法[未登录]
@陈梓瀚(vczh)
人称轮带逛!!!
--q
2. re: Git Stash用法
@Loaden
这个B装的好
--doubi
3. re: Chrome神器Vimium快捷键学习记录
哦啦啦啦啦
--阿里河
4. re: Chrome神器Vimium快捷键学习记录
希望能添加更新后的功能翻译
--Vi.Ci
5. re: Chrome神器Vimium快捷键学习记录
@coolbit
谢谢,学会了
--xin
阅读排行榜
1. Git Stash用法(300425)
2. Chrome神器Vimium快捷键学习记录(67426)
3. GitHub使用简介(35318)
4. Ubuntu下硬盘的自动挂载(23711)
5. Ubuntu更新包管理器失败:Requires installation of untrusted packages问题解决(18436)
评论排行榜
1. 【欢迎各位留言讨论】C++中运算符New的一个疑问【新的问题!】【各位继续关注讨论啊!】(23)
2. Git Stash用法(21)
3. Chrome神器Vimium快捷键学习记录(19)
4. C++友元的一个问题-----------由派生类访问基类的私有成员(10)
5. OpenCV学习笔记(一)(7)