RT,谢谢

解决方案 »

  1.   

    DrawItem自绘
    看MSDN上的例子 http://msdn.microsoft.com/en-us/library/y5hb5f9t(VS.80).aspx
      

  2.   

    // CMyComboBox is my owner-drawn combo box derived from CComboBox. This 
    // example draws an item's text centered vertically and horizontally. The 
    // combo box control was created with the following code:
    //   pmyComboBox->Create(
    //      WS_CHILD|WS_VISIBLE|WS_BORDER|WS_HSCROLL|WS_VSCROLL|
    //      CBS_SORT|CBS_OWNERDRAWVARIABLE,
    //      CRect(10,10,200,200), pParentWnd, 1);
    //
    void CMyComboBox::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct) 
    {
       ASSERT(lpDrawItemStruct->CtlType == ODT_COMBOBOX);
       LPCTSTR lpszText = (LPCTSTR) lpDrawItemStruct->itemData;
       ASSERT(lpszText != NULL);
       CDC dc;   dc.Attach(lpDrawItemStruct->hDC);   // Save these value to restore them when done drawing.
       COLORREF crOldTextColor = dc.GetTextColor();
       COLORREF crOldBkColor = dc.GetBkColor();   // If this item is selected, set the background color 
       // and the text color to appropriate values. Erase
       // the rect by filling it with the background color.
       if ((lpDrawItemStruct->itemAction | ODA_SELECT) &&
          (lpDrawItemStruct->itemState  & ODS_SELECTED))
       {
          dc.SetTextColor(::GetSysColor(COLOR_HIGHLIGHTTEXT));
          dc.SetBkColor(::GetSysColor(COLOR_HIGHLIGHT));
          dc.FillSolidRect(&lpDrawItemStruct->rcItem, ::GetSysColor(COLOR_HIGHLIGHT));
       }
       else
          dc.FillSolidRect(&lpDrawItemStruct->rcItem, crOldBkColor);   // Draw the text.
       dc.DrawText(
          lpszText,
          strlen(lpszText),
          &lpDrawItemStruct->rcItem,
          DT_CENTER|DT_SINGLELINE|DT_VCENTER);   // Reset the background color and the text color back to their
       // original values.
       dc.SetTextColor(crOldTextColor);
       dc.SetBkColor(crOldBkColor);   dc.Detach();
    }
      

  3.   

    需要自己派生一个ComBox的子类,然后重绘
      

  4.   

    这方面网上的资源很多啊
    http://dev.firnow.com/course/3_program/vc/vc_js/200878/132216.html
    http://www.vckbase.com/document/viewdoc/?id=551
    http://www.cppblog.com/Lee7/archive/2009/03/16/76732.html