在一个对话框界面,有3张图片,双击一个图片,会调用某个函数,
并且这3张图片是互斥的,如单击某一张,先前单击的一张就取消焦点
请给个思路吧,如果有代码就更感谢了!!!

解决方案 »

  1.   

    fisherboy (渔夫的孩子) 在:http://community.csdn.net/Expert/topic/4728/4728515.xml?temp=.5399897已经提了问题,不过没给分,我这给出
    求各位帮帮忙
      

  2.   

    这个是按钮吗?
    图片按钮可以用CBitmapButton
    楼主的要求只有自己编了。图片控件,响应dbclick
      

  3.   

    谢谢各位,我正在看CBitmapButton的用法,还有很多不明白
      

  4.   

    CBitmapButton不能响应双击事件,可能不行。从CStatic派生一个类,在上面显示图片,动态创建时加上0x100,如WS_VISABLE|0x100等,以便控件自己处理消息,然后自己在类中响应双击事件。
      

  5.   

    1) Bring up ClassWizard
    2) Select the "Message Maps" tab
    3) In the "Object IDs" listbox, select the ID of
    the button you want to map
    4) In the "Messages" list box, you should see 
    BN_CLICKED, and BN_DOUBLECLICKED.
    5) Doubleclick the BN_CLICKED entry. This will 
    build a handler method within your class to
    handle the button click for your button.
      

  6.   

    谢谢各位,我是新手,现在还有两个问题:
    一是:如何把已有图片加载到CBitmapButton
    二是:CBitmapButton如何定义
    谢谢!在线等,搞定就结贴.
      

  7.   

    在对话框添加按钮 设ID 为IDC_BUTTON1,
    倒入1个位图文件,在复制一下, ID设置为"BMPU"和"BMPD"一定要加双引号,倒入的位图文件名为bmp1.bmp
    BMPU为按钮松开状态,BMPD为按下状态,BMPU为必须的
    声明CBitmapButton m_Button1;
    映射WM_INITDIALOG消息,并在其中加入代码
    bmp1.AutoLoad(IDC_BUTTON1,this);
      

  8.   

    声明应为CBitmapButton bmp1;
    刚才错了
      

  9.   

    声明为CBitmapButton m_bmp1;(后边的为图像的名字)
    然后m_bmp1.AutoLoad(IDC_BUTTON1,this);
    按钮的属性要设置owner draw
    按钮的名字要和位图资源名字匹配
      

  10.   

    非常感谢cctvnight(异度使者)的回复
    现在还有点问题:
    1、“ID设置为"BMPU"和"BMPD"一定要加双引号,倒入的位图文件名为bmp1.bmp”。现在有两个位图,ID各为:"BMPU"和"BMPD",可两个位图的文件名是不能一样的呀,我各定义为:bmp1.bmp,bmp2.bmp。
    2、“BMPU为按钮松开状态,BMPD为按下状态,BMPU为必须的”。这是如何与按钮相关的?
    3、“声明为CBitmapButton m_bmp1;(后边的为图像的名字),然后m_bmp1.AutoLoad(IDC_BUTTON1,this);”。这样可以与按钮关联上吗?还有就是这段声明应该在MYCLASS::OnInitDialog()里声明?
    谢谢您的回复!
      

  11.   

    继承CButton写个类,在CButton的OnPaint()里面绘制。
      

  12.   

    用单选按钮:选择属性Push_like 和Bitmap 然后想办法把你想要的图加载上去,至于互斥我就不知道了
      

  13.   

    位图只能是一个,倒入BMP图像后复制一下,在座相应的修改,一般反转图像颜色
    后边的U表示松开,D表示按下,
    这段声明最好是在初始化的时候使用
      

  14.   

    谢谢各位,问题解决了
    我用Radio Button结合Picture控件解决了