为什么VC中不同的控件可以响应的消息不一样???

我想知道为什么MFC程序中不同的控件能够响应的消息是有区别的...我想让一个CEdit控件响应WM_RBUTTONDOWN消息~有一个方法就是重写一个新的CEdit类CM... 我想知道为什么MFC程序中不同的控件能够响应的消息是有区别的...

我想让一个CEdit控件响应WM_RBUTTONDOWN消息~
有一个方法就是重写一个新的CEdit类CMyEdit
在CMyEdit类中处理WM_RBUTTONDOWN消息,
但是这样我在该类中就无法修改对话框的某个成员变量了...
有没有好的解决方案?
blueardor,schenton你们两个的方法我都试了下,确实都可行..不过只能给一个人分拉,只好给先到的拉 ^_^
展开
 我来答
lfm13720
2008-08-04 · TA获得超过1102个赞
知道小有建树答主
回答量:896
采纳率:0%
帮助的人:0
展开全部
控件根据功能不同,能响应的消息也不同,如果什么消息都响应会让程序体积很大,没有必要。
派生CEdit类可以解决,你可以将Edit控件关联成CMyEdit类型的成员变量,使用控件的字符串值的时候调用 CEdit的 GetWindowText方法就行了,虽然没有直接关联 CString 型变量方便,但也不是很麻烦。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
schenton
2008-08-05 · TA获得超过104个赞
知道小有建树答主
回答量:129
采纳率:0%
帮助的人:161万
展开全部
在CMyEdit类中处理WM_RBUTTONDOWN消息,
但是这样我在该类中就无法修改对话框的某个成员变量了...
----------------------------------
这个类是可以获得对话框的成员变量的
方法1。 你可以在构在这个类的时候,在构造函数里 把对话框指针做为一个类的变量存储。
方法2。 因为这个CEdit是放在对话框里的,所以你可以GetParent()获得父窗口指针 也就是对话框的指针 既然指针得到了 你想要什么变量 就有什么变量了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
blueardor
2008-08-05 · 超过12用户采纳过TA的回答
知道答主
回答量:216
采纳率:0%
帮助的人:154万
展开全部
1。所有的空间都是从cwnd继承的,cwnd肯定有基本的消息相应,根据不同的需要,进行继承,或者扩展,或者减少接口,以实现专用功能。

2。你可以使用ON_NOTIFY消息来通知父窗口,实现自窗口的点击等功能,可以查看msdn
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
geniusflly
2008-08-05 · TA获得超过112个赞
知道答主
回答量:136
采纳率:0%
帮助的人:50.6万
展开全部
控件在制作的时候,都自定义了消息 和 处理消息的方式!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式