combox的onselchange事件中如何得到此控件id?

解决方案 »

  1.   

    getdlgctrlid为什么是0,实际植不为0
      

  2.   

    GetDlgCtrlID不可以,假的吧!
    那你试试这个:
    GetWindowLong(hwnd,GWL_ID);//hwnd combox的句丙
      

  3.   

    GetDlgCtrlID返回零?你是在父窗口中使用的吧?
      

  4.   

    哦~~知道了,你没有绑定的一个CComboBox对象吧?在父窗口的成员函数中这么用就能得到了:int ID = GetFocus()->GetDlgCtrlID();
      

  5.   

    哦,忽略了一点,实际上的到焦点的是ComboBox的子窗口,所以还要改一下: int ID = GetFocus()->GetParent()->GetDlgCtrlID();
    另外,还有个不值得推荐的办法,打开Resource.h,大概是这样的://前面的省略
    #define IDC_COMBO1                      1000   // 注意这个
    // 省略// Next default values for new objects
    // 
    #ifdef APSTUDIO_INVOKED
    #ifndef APSTUDIO_READONLY_SYMBOLS
    #define _APS_NEXT_RESOURCE_VALUE        130
    #define _APS_NEXT_COMMAND_VALUE         32771
    #define _APS_NEXT_CONTROL_VALUE         1001    // 注意这个上面我加注释的地方,把两个值更改一下也是可以的。
      

  6.   

    CBN_SELCHANGE :
     controlID = LOWORD(wParam) see msdn.