CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  界面

如何为每一个CButton按钮添加各自独立的mousedown或mouseup消息

楼主wyhadx()2005-08-02 15:56:19 在 VC/MFC / 界面 提问

在派生类里处理确实可行,但是,所有按钮都要共用一个mousedown消息,例如:CXpButton继承于  
  CButton类,在CXpButton类中可以实现mousedown消息,这时,如果加入多个按钮,都是CXpButton  
  类型的,但是mousedown消息却只有一个,如何为每一个按钮都分配一个mousedown消息函数,就像  
  ButtonClick()一样,vb和C++builder的按钮都有mousedown事件,并且每个按钮都是独立的。  
  问题点数:20、回复次数:5Top

1 楼lixiaosan(小三)回复于 2005-08-02 16:10:14 得分 0

在pretranslatemessage中判断是哪个button  
  mousedown里根据button来执行不同代码Top

2 楼wyhadx()回复于 2005-08-02 16:24:07 得分 0

lixiaosan(小三),你好,利用pretranslatemessage是可以实现该功能,但还是显得有些笨拙,如果什么消息都到这里处理,代码也不是很美观,最关键,该按钮还是没有独立处理mousedown消息。Top

3 楼kuangjingbo(正在学习windows)回复于 2005-08-02 21:10:59 得分 0

可以在类中设一个指针变量,也就是一个指向函数的指针pFun。在你的mousedown处理函数中,调用此指针指向的函数。  
  而你对不同的button   对象,把他们的pFun赋值成不同的函数地址就可以了。  
  有点类似回掉函数。Top

4 楼kuangjingbo(正在学习windows)回复于 2005-08-02 21:15:14 得分 0

class   CXpButton   :   public   CButton  
  {  
        ……  
        相应的函数指针类型     pFun;  
        ……  
  }  
   
  CXpButton::ButtonClick(参数)  
  {  
        ……  
        (*   pFun)(参数);  
        ……  
  }Top

5 楼wyhadx()回复于 2005-08-09 15:39:50 得分 0

dingTop

相关问题

  • CButton 怎么实现如vb中的mousedown mouseup?或者有什么其他控件?
  • 如何取得按钮的MouseDown事件?
  • CButton 按钮, 在用 SetWindowText 时出错。
  • 怎么改变CButton按钮控件的背景颜色????
  • 如何给窗口中按钮(CButton)改为位图显示?
  • 用CButton::Create创建的按钮怎么隐藏?
  • 没有CButton类对象变量,如何取得按钮的Check状态?100分
  • 我想问一下,在CView的客户区中能否用CButton生成按钮?
  • 从CButton继承的按钮如何能够截获WM_IME_NOTIFY消息?
  • 怎样在CBUTTON的推进式按钮中捕捉鼠标弹起消息?

关键词

  • 函数
  • 指针
  • 消息
  • mousedown
  • 按钮
  • cxpbutton
  • cbutton
  • pfun
  • 类
  • 处理

得分解答快速导航

  • 帖主:wyhadx

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo