1.动态创建一个Combbox控件:
CreateWindowEx(
        WS_EX_STATICEDGE, 
        (LPCSTR)"COMBOBOX", (LPCSTR)"", 
        WS_BORDER | WS_CHILD | WS_TABSTOP | CBS_DROPDOWNLIST | WS_VSCROLL | WS_VISIBLE | CBS_SORT |CBS_UPPERCASE, 
        50 ,50, 150, 100, 
        GetSafeHwnd(), (HMENU)(123), AfxGetApp()->m_hInstance, NULL);
2.改变样式:
ModifyStyleEx(CBS_DROPDOWNLIST,CBS_DROPDOWN);
3.结果:没有任何反应~~~~~~~~~

解决方案 »

  1.   

    ModifyStyleEx和ModifyStyle是不同的。
    WS_BORDER | WS_CHILD | WS_TABSTOP | CBS_DROPDOWNLIST | WS_VSCROLL | WS_VISIBLE | CBS_SORT |CBS_UPPERCASE之类
    属于ModifyStyle的控制范围。
    WS_EX_STATICEDGE之类属于ModifyStyleEx的控制范围。
    具体看MSDN帮助吧。
      

  2.   

    You can't change the style at run-time。method:
    place two combo box controls at the same position only differing by the style, then enable/disable the appropriate one as required.