°´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·ҳ£¬°´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ£¬°´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿£¡
¡ª¡ª¡ª¡ªÎ´ÔĶÁÍꣿ¼ÓÈëÊéÇ©ÒѱãÏ´μÌÐøÔĶÁ£¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Fixed¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Sort£ºÕæ¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Vertical¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡scroll£ºÕæ¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Has¡¡string£º¼Ù¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂѹ°´¡¡¡¡¡¡¡¡¡¡¡¡IDC_ADDCLR¡¡¡¡¡¡¡¡¡¡Caption£ºÌí¼ÓÑÕ¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Å¥¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡É«£¨&A£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡IDC_CHGCLR¡¡¡¡¡¡¡¡¡¡Caption£º¸Ä±äÑÕ¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡É«£¨&C£©¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¾²Ì¬¿Ø¡¡¡¡¡¡¡¡¡¡¡¡IDC_STATICCLR¡¡¡¡CaptionÊôÐÔֵΪ¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¼þ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¿Õ¡¡¡¡
3¡£¡¡¡¡Ê¹ÓÃClassWizardµÄMessage¡¡¡¡MapÑ¡ÏÔÚÀàCClrboBoxÖÐÖØÔØ¡¡
»ùÀàµÄMeasureItem³ÉÔ±º¯Êý£¬ÆäÖØÔØ°æ±¾µÄ´úÂëÈçÏ£º¡¡¡¡
void¡¡CClrboBox£º£ºMeasureItem£¨LPMEASUREITEMSTRUCT¡¡lpMeasureItemStruct£©¡¡¡¡¡¡
£û¡¡¡¡
//¡¡ÓÉÓÚ×éºÏ¿ò¾ßÓС¡CBS_OWNERDRAWFIXED¡¡Ñùʽ£¬Òò´ËÒÔ¡¡0¡¡Îª²ÎÊýµ÷ÓóÉÔ±º¯Êý¡¡¡¡
//¡¡GetItemHeight¡¡»ñµÃÿһÏîµÄ¹Ì¶¨¸ß¶È¡¡¡¡
lpMeasureItemStruct¡¡·itemHeight=GetItemHeight£¨0£©£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡381¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
£ý¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Í¼6¡£¡¡55¡¡´ÓCboBoxÅÉÉúÐÂÀàCClrboBox¡¡¡¡
º¯ÊýMeasureItemÔÚ×Ô»æÖÆÑùʽµÄ×éºÏ¿ò´´½¨Ê±ÓÉ¿ò¼Üµ÷Ó᣸ú¯Êý¡¡
½«Ã¿Ò»ÏîµÄ¸ß¶È·ÅÈëMEASUREITEMSTRUCT½á¹¹µÄ³ÉÔ±ÖС£Èç¹û¶Ô»°¿ò¡¡
ÒÔCBS_OWNERDRAWVARIABLEÑùʽ´´½¨£¬¿ò¼Ü½«ÎªÁбí¿òÖеÄÿһÏîµ÷¡¡
ÓÃÒ»´Î¸Ã³ÉÔ±º¯Êý£¬·ñÔò£¬¸Ã³ÉÔ±º¯ÊýÖ»±»µ÷ÓÃÒ»´Î¡£¡¡¡¡
½Ó×Å£¬ÔÚCClrboBoxµÄÖØÔØ»ùÀàµÄDrawItem³ÉÔ±º¯Êý£¬Æä´úÂëÈç¡¡
Ï£º¡¡¡¡
void¡¡CClrboBox£º£ºDrawItem£¨LPDRAWITEMSTRUCT¡¡lpDrawItemStruct£©¡¡¡¡¡¡
£û¡¡¡¡
CDC*¡¡pDC=CDC£º£ºFromHandle£¨lpDrawItemStruct¡¡·hDC£©£»¡¡¡¡
COLORREF¡¡cr=£¨COLORREF£©lpDrawItemStruct¡¡·itemData£»¡¡¡¡
//¡¡×¢Òâµ½ÔÚ³ö´íµÄÇé¿öÏ£¬GetCurSel¡¡ºÍ¡¡GetItemData¡¡·µ»Ø¡¡CB_ERR£¬¶ø³£Á¿¡¡¡¡
//¡¡CB_ERR¡¡±»¶¨ÒåΪ¡¡¡1£¬Õâʱ²»Ó¦°ÑËüÊÓΪһÖÖϵͳÑÕÉ«¡£¡¡¡¡
if¡¡£¨cr==CB_ERR£©¡¡¡¡
cr=GetSysColor£¨COLOR_WINDOW£©£»¡¡¡¡
if¡¡£¨lpDrawItemStruct¡¡·itemAction¡¡&¡¡ODA_DRAWENTIRE£©¡¡¡¡
£û¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡382¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
//¡¡ÐèÒªÖØ»æÕû¸öÏî¡¡¡¡
//¡¡ÒÔ¸ÃÏîËù¶ÔÓ¦µÄÑÕÉ«Ìî³äÕû¸öÏî¡¡¡¡
CBrush¡¡br£¨cr£©£»¡¡¡¡
pDC¡¡·FillRect£¨&lpDrawItemStruct¡¡·rcItem£»¡¡&br£©£»¡¡¡¡
//¡¡·´É«¾ÓÖÐÏÔʾ¸ÃÑÕÉ«µÄ¡¡RGB¡¡×é³É¡¡¡¡
CString¡¡str£»¡¡¡¡
str¡£Format£¨¡¨R£º¡¡£¥d¡¡G£º¡¡£¥d¡¡B£º¡¡£¥d¡¨£»¡¡GetRValue£¨cr£©£»¡¡GetGValue£¨cr£©£»¡¡GetBValue£¨cr£©£©£»¡¡¡¡
CSize¡¡size£»¡¡¡¡
size=pDC¡¡·GetTextExtent£¨str£©£»¡¡¡¡
CRect¡¡rect=lpDrawItemStruct¡¡·rcItem£»¡¡¡¡
COLORREF¡¡tcr£»¡¡¡¡
tcr=~cr¡¡&¡¡0x00FFFFFF£»¡¡//¡¡»ñµÃ±³¾°É«µÄ·´É«£¬²»Äܼòµ¥µÄʹÓá¡~cr¡¡¡¡
pDC¡¡·SetTextColor£¨tcr£©£»¡¡¡¡
pDC¡¡·SetBkColor£¨cr£©£»¡¡¡¡
pDC¡¡·TextOut£¨rect¡£left£«£¨rect¡£Width£¨£©¡size¡£cx£©/2£»¡¡¡¡¡¡
rect¡£top£«£¨rect¡£Height£¨£©¡size¡£cy£©/2£»¡¡str£©£»¡¡¡¡
£ý¡¡¡¡
if¡¡£¨£¨lpDrawItemStruct¡¡·itemState¡¡&¡¡ODS_SELECTED£©¡¡&&¡¡¡¡
£¨lpDrawItemStruct¡¡·itemAction¡¡&¡¡£¨ODA_SELECT¡¡£ü¡¡ODA_DRAWENTIRE£©£©£©¡¡¡¡
£û¡¡¡¡
//¡¡Ñ¡ÖÐ״̬ÓÉδѡÖбäΪѡÖУ¬Æä±ß¿ò±»¼ÓÁÁÏÔʾ¡¡¡¡
COLORREF¡¡crHilite=~cr¡¡&¡¡0x00FFFFFF£»¡¡¡¡
CBrush¡¡br£¨crHilite£©£»¡¡¡¡
pDC¡¡·FrameRect£¨&lpDrawItemStruct¡¡·rcItem£»¡¡&br£©£»¡¡¡¡
£ý¡¡¡¡
if¡¡£¨£¡£¨lpDrawItemStruct¡¡·itemState¡¡&¡¡ODS_SELECTED£©¡¡&&¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡383¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
£¨lpDrawItemStruct¡¡·itemAction¡¡&¡¡ODA_SELECT£©£©¡¡¡¡
£û¡¡¡¡
//¡¡Ñ¡ÖÐ״̬ÓÉÑ¡ÖбäΪ·ÇÑ¡ÖУ¬Çå³ýÆä±ß¿òµÄ¼ÓÁÁÏÔʾ¡¡¡¡
CBrush¡¡br£¨cr£©£»¡¡¡¡
pDC¡¡·FrameRect£¨&lpDrawItemStruct¡¡·rcItem£»¡¡&br£©£»¡¡¡¡
£ý¡¡¡¡
£ý¡¡¡¡
¶ÔÓÚ×Ô»æÖÆ×éºÏ¿òÀ´Ëµ£¬³ÉÔ±º¯ÊýDrawItemÊÇÐèÒªÖØÔصÄÒ»¸öºÜÖØÒª¡¡
µÄ³ÉÔ±º¯Êý¡£¸Ãº¯ÊýÔÚ×Ô»æÖÆ×éºÏ¿òµÄ¿ÉÊÓ²¿·Ö·¢Éú¸Ä±äʱÓÉ¿ò¼Üµ÷¡¡
Óá£ÔÚĬÈÏÇé¿öÏ£¬¸Ã³ÉÔ±º¯Êý²»×öÈκβÙ×÷¡£Æä²ÎÊý¡¡
lpDrawItemStructËùÖ¸ÏòµÄDRAWITEMSTRUCT½á¹¹°üÀ¨ÁËÖØ»æÖÆËùÐèÒª¡¡
µÄ¸÷ÖÖÐÅÏ¢£¬ÈçËùÐèÖØ»æµÄÏî¡¢ÆäÉ豸ÉÏÏÂÎÄÒÔ¼°ËùÖ´ÐеÄÖØ»æÐÐΪ¡¡
µÈ¡£ÔڸóÉÔ±º¯ÊýÖÕֹǰ£¬Ó¦ÓóÌÐòÓ¦¸Ã»Ö¸´ÓɸÃDRAWITEMSTRUCT½á¡¡
¹¹ËùÌṩµÄΪ¸ÃÏÔʾÉÏÏÂÎÄËùÑ¡¶¨Í¼ÐÎÉ豸½Ó¿Ú¡£¡¡¡¡
Óɱí6¡£30¿ÉÖªÔÚ±¾Ê¾Àý³ÌÐòÖÐËùʹÓõÄ×Ô»æ×éºÏ¿òÖеĿÉÑ¡ÏîÊÇÓÐÐò¡¡
µÄ£¬¶øËüÃǶ¼ÊÇһЩÑÕÉ«Öµ£¬¿ò¼ÜÈçºÎÖªµÀµ±Ò»¸öеÄÑÕÉ«Öµ±»Ìí¼Ó¡¡
µ½×éºÏ¿òµÄÁбí¿òÖÐʱ£¬ËüÓ¦¸Ã´¦ÓÚÄĸöÑÕɫֵ֮ǰ£¬ÄĸöÑÕÉ«ÖµÖ®¡¡
ºóÄØ£¿Õâʱͨ¹ýµ÷ÓóÉÔ±º¯ÊýpareItem³ÉÔ±º¯ÊýÀ´ÊµÏֵġ£Èç¹û¡¡
ÔÚ´´½¨×éºÏ¿òʱָ¶¨ÁËLBS_SORTÑùʽ£¬Ôò±ØÐëÖØÔظóÉÔ±º¯ÊýÒÔÌṩ¡¡
×ã¹»µÄÀíÓÉÀ´°ïÖú¿ò¼Ü¶ÔÐÂÌí¼ÓÈë×éºÏ¿òµÄÁбí¿òÖеÄÑÕÉ«Ïî½øÐÐÅÅ¡¡
Ðò¡£ÕâÀÎÒÃÇÊ×Ïȸù¾ÝÑÕÉ«ÁÁ¶ÈµÄ´óСÀ´¶ÔÑÕÉ«½øÐÐÅÅÐò£¬¶ÔÓÚÁÁ¡¡
¶ÈÏàͬµÄÑÕÉ«£¬ÎÒÃÇÒÀ´ÎÒÔ´ÓÀ¶É«µ½ºìÉ«µÄÓÅÏȼ¶À´Åж¨ÆäÏà¶Ôλ¡¡
Öá£Õâ¸ö²Ù×÷ÊÇÒÔÏÂÃæµÄ´úÂëÀ´ÊµÏֵģº¡¡¡¡
int¡¡CClrboBox£º£ºpareItem£¨LPPAREITEMSTRUCT¡¡lppareItemStruct£©¡¡¡¡¡¡
£û¡¡¡¡
//¡¡TODO£º¡¡Ìí¼ÓÅжÏÖ¸¶¨ÏîµÄÅÅÐò˳ÐòµÄ´úÂë¡¡¡¡
//¡¡µ±Ïî¡¡1¡¡ÔÚÏî¡¡2¡¡Ö®Ç°Ê±·µ»Ø¡¡¡1¡¡¡¡
//¡¡µ±Ïî¡¡1¡¡ºÍÏî¡¡2¡¡Ë³ÐòÏàͬʱ·µ»Ø¡¡0¡¡¡¡
//¡¡µ±Ïî¡¡1¡¡ÔÚÏî¡¡2¡¡Ö®ºóʱ·µ»Ø¡¡1¡¡¡¡
//¡¡»ñµÃÏî¡¡1¡¡ºÍÏî¡¡2¡¡µÄÑÕÉ«Öµ¡¡¡¡
COLORREF¡¡cr1¡¡=¡¡£¨COLORREF£©lppareItemStruct¡¡·itemData1£»¡¡¡¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡384¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
COLORREF¡¡cr2¡¡=¡¡£¨COLORREF£©lppareItemStruct¡¡·itemData2£»¡¡¡¡
if¡¡£¨cr1¡¡==¡¡cr2£©¡¡¡¡
£û¡¡¡¡
//¡¡Ïî¡¡1¡¡ºÍÏî¡¡2¡¡¾ßÓÐÏàͬµÄÑÕÉ«¡¡¡¡
return¡¡0£»¡¡¡¡
£ý¡¡¡¡
//¡¡½øÐÐÁÁ¶È±È½Ï£»¡¡ÁÁ¶ÈµÍµÄÅÅÁÐ˳ÐòÔÚÇ°¡¡¡¡
int¡¡intensity1¡¡=¡¡GetRValue£¨cr1£©¡¡£«¡¡GetGValue£¨cr1£©¡¡£«¡¡GetBValue£¨cr1£©£»¡¡¡¡
int¡¡intensity2¡¡=¡¡GetRValue£¨cr2£©¡¡£«¡¡GetGValue£¨cr2£©¡¡£«¡¡GetBValue£¨cr2£©£»¡¡¡¡
if¡¡£¨intensity1¡¡¡¶¡¡intensity2£©¡¡¡¡
return¡¡¡1£»¡¡¡¡
else¡¡if¡¡£¨intensity1¡¡¡·¡¡intensity2£©¡¡¡¡
return¡¡1£»¡¡¡¡
//¡¡Èç¹ûÁÁ¶ÈÏàͬ£»¡¡°´ÑÕÉ«½øÐÐÅÅÐò£»¡¡£¨À¶É«×îÇ°£»¡¡ºìÉ«×îºó£©¡¡¡¡
if¡¡£¨GetBValue£¨cr1£©¡¡¡·¡¡GetBValue£¨cr2£©£©¡¡¡¡
return¡¡¡1£»¡¡¡¡
else¡¡if¡¡£¨GetGValue£¨cr1£©¡¡¡·¡¡GetGValue£¨cr2£©£©¡¡¡¡
return¡¡¡1£»¡¡¡¡
else¡¡if¡¡£¨GetRValue£¨cr1£©¡¡¡·¡¡GetRValue£¨cr2£©£©¡¡¡¡
return¡¡¡1£»¡¡¡¡
else¡¡¡¡
return¡¡1£»¡¡¡¡
£ý¡¡¡¡
ÉÏÃæµÄ´úÂëͬʱҲ˵Ã÷ÁËpareItem³ÉÔ±º¯ÊýµÄ²»Í¬·µ»ØÖµËù´ú±í¡¡
µÄ²»Í¬º¬Òå¡£ÕâÀïҪעÒâµÄÊÇ£¬ÓÉÓÚͬÁÁ¶ÈµÄ²»Í¬ÑÕÉ«¸øÈ˵ÄÑÛ¾¦µÄ¡¡
ÁÁ¶È¸Ð¾õÊDz»Ò»ÑùµÄ£¨ÕâºÃ±ÈÈ˶ú¶ÔÉùÒôµÄ¸ßƵ¶ÎºÍµÍƵ¶ÎµÄÌý¾õÁé¡¡
Ãô¶ÈÒª±È¶ÔÖÐƵ¶ÎµÄÌý¾õÁéÃô¶ÈҪСһÑù£©£¬ÉÏÃæµÄÅÅÐò½á¹û¸øÈ˸С¡
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Page¡¡385¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¾õ²¢²»ÏóÎÒÃÇËùÏëÏóµÄÄÇÑù£¬ÊÇͨ¹ýÑÕÉ«µÄÁÁ¶ÈÀ´½øÐеġ£µ«ÎÒÃÇû¡¡
ÓбØÒªÔÚÕâ¸öÎÊÌâÉϹý·ÖµÄ¾À²ø¶øÀË·Ñʱ¼ä¡£ÁíÍâÎÒÃǽâÊÍһϣ¬Îª¡¡
ʲôҪʹÓÃ~cr¡¡¡¡&¡¡¡¡0x00FFFFFFÀ´´úÌæ~cr¡£ºÜ¶àÈË»áÈÏΪֱ½Ó½«ÑÕÉ«¡¡
Öµ°´Î»È¡·´¾Í¿ÉÒԵõ½Æä¶Ô±ÈÉ«£¬µ«Ê