none
如何获得drop list类型combobox的static控件? RRS feed

  • 问题

  • msdn上有个demo如下,使用这个demo可以获取到dropdow类型combobox的edit控件和listbox控件,但我把combobox改为drop list类后(我需要重绘droplist类型的combobox),在OnCtlColor()函数中只收CTLCOLOR_LISTBOX数值,得不到static控件的窗口,大侠帮个忙指点一下吧

       // SuperComboBox.cpp : implementation file
       HBRUSH CSuperComboBox::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
       {
          if (nCtlColor == CTLCOLOR_EDIT)
          {
             //[ASCII 160][ASCII 160][ASCII 160]Edit control
             if (m_edit.GetSafeHwnd() == NULL)
                m_edit.SubclassWindow(pWnd->GetSafeHwnd());
          }
          else if (nCtlColor == CTLCOLOR_LISTBOX)
          {
             //ListBox control
             if (m_listbox.GetSafeHwnd() == NULL)
                m_listbox.SubclassWindow(pWnd->GetSafeHwnd());
          }
          HBRUSH hbr = CComboBox::OnCtlColor(pDC, pWnd, nCtlColor);
          return hbr;
       }

    2013年8月14日 11:28

答案

  • DropList风格的CComboBox控件中不是以CStatic控件作为子控件窗口的,所以就不可能有static控件窗口一说的。

    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    2013年8月15日 2:07
    版主