首页 > Windows开发 > 详细

win32 sdk绘制ListBox控件

时间:2016-04-18 06:25:19      阅读:285      评论:0      收藏:0      [点我收藏+]

1》产生:

 
  1. //  
  2. HWND CreateLB(HWND parentWnd)  
  3. {  
  4.     HWND hListBox=0;  
  5.     hListBox = CreateWindow("LISTBOX",  
  6.                 NULL,  
  7.                 WS_CHILD|WS_VSCROLL | WS_TABSTOP | LBS_STANDARD | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS,  
  8.                 230, 20, 60, 80,   
  9.                 parentWnd, (HMENU)IDC_LISTBOX,   
  10.                 (HINSTANCE) GetWindowLong(parentWnd, GWL_HINSTANCE),   
  11.                 NULL);  
  12.                 ShowWindow(hListBox,SW_SHOW);  
  13.                 SendMessage(hListBox,LB_ADDSTRING ,0,(LPARAM)"你好");  
  14.                 SendMessage(hListBox,LB_ADDSTRING ,0,(LPARAM)"我好");  
  15.                 SendMessage(hListBox,LB_ADDSTRING ,0,(LPARAM)"他好");  
  16. //  
  17.     return hListBox;  
  18. }  

2》指定size:
 
  1. case WM_MEASUREITEM://ODT_LISTBOX  
  2.     if((UINT) wParam==IDC_LISTBOX)  
  3.     {  
  4.         LPMEASUREITEMSTRUCT lpmis = (LPMEASUREITEMSTRUCT) lParam;  
  5.         lpmis->itemWidth=400;  
  6.         lpmis->itemHeight=22;  
  7.     }  
  8.     break;  


3》画:
 
  1. case WM_DRAWITEM:  
  2.       
  3.     if((UINT) wParam==IDC_LISTBOX)  
  4.     {  
  5.         LPDRAWITEMSTRUCT pDI=(LPDRAWITEMSTRUCT) lParam;  
  6.         HBRUSH brsh=CreateSolidBrush(RGB(255-30*pDI->itemID, 128+40*pDI->itemID, 128+40*pDI->itemID));//yellow  
  7.         FillRect(pDI->hDC,&pDI->rcItem,brsh);  
  8.         DeleteObject(brsh);  
  9.         // text   
  10.         SetBkMode(pDI->hDC,TRANSPARENT);  
  11.         char szText[260];  
  12.         SendMessage(m_hListBox,LB_GETTEXT,pDI->itemID,(LPARAM)szText);  
  13.         const DWORD dwStyle = DT_LEFT | DT_SINGLELINE | DT_VCENTER | DT_NOPREFIX | DT_END_ELLIPSIS;  
  14.         DrawText(pDI->hDC, szText, strlen(szText), &pDI->rcItem, dwStyle);  
  15.     }  
  16. break;  


4》要点:| LBS_OWNERDRAWFIXED | LBS_HASSTRINGS,

http://www.cnblogs.com/lidabo/p/3701607.html

win32 sdk绘制ListBox控件

原文:http://www.cnblogs.com/findumars/p/5402975.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!