因为默认控件都是鼠标点击即会切换焦点.
除非你自己绘制控件, 截获WM_SETFOCUS消息, 让按钮不能获取焦点, 让编辑不能失去焦点.
然后再响应按钮的按下.

解决方案 »

  1.   

    xiaohuh421。谢谢你的回复
    我自己设计的话估计不会这样做,但是我现在是用软件模拟的实体按键,别人产品的实体按键就是这样功能的按键,我在C#可以,因为C#焦点会转移到BUTTON上,但是貌似有内部处理,使得edit好像没失去焦点一样。不会只能自绘控件吧,我菜鸟一个啊。有点麻烦了
      

  2.   

    自己从CButton派生一个类,重载OnFocus函数,在OnFocus函数里把Focus传给其他控件,其实不难的
      

  3.   

    xsgluozi,我在点击BUTTON的时候,焦点就会离开edit,从而触发edit的killfocus事件,于是我BUTTON的其中一个功能根本就实现不了了,不是把focus传给别的控件能解决的吧
      

  4.   

    作为不夺取焦点的窗口一般都有(WS_EX_NOACTIVE)扩展风格
      

  5.   

    @zgl7903
    WS_EX_NOACTIVE 风格是禁用窗口吧?