Create(WS_VISIBLE|WS_CHILD|LBS_NOTIFY|LBS_OWNERDRAWFIXED|LBS_HASSTRINGS|LBS_NOINTEGRALHEIGHT ,rcWnd,this,xxx);

如果想要响应ON_LBN_SELCHANGE消息,则一定要加LBS_NOTIFY;

如果想要自绘风格则加LBS_OWNERDRAWFIXED;

如果碰到DrawItem的时候,GetText获取不到正常的字符串的时候,则要加LBS_HASSTRINGS;

如果碰到改变列表框大小的时候,列表框高度不对劲,则要加LBS_NOINTEGRALHEIGHT;

顺便贴出自绘代码段:

void CMyListBox::DrawItem(LPDRAWITEMSTRUCT lpDIS)
{
if ((int)lpDIS->itemID < 0)
return; TCHAR ch[64] = {0};
GetText(lpDIS->itemID, ch); CDC* pDC = CDC::FromHandle(lpDIS->hDC);
CRect rFrame = lpDIS->rcItem;
rFrame.DeflateRect(1,1,1,1); // If item has been selected, draw the highlight rectangle using the item's color.
CBrush brush(RGB(255,255,255));
pDC->FillRect(&rFrame, &brush); if ((lpDIS->itemState & ODS_SELECTED))
{
CBrush brush(RGB(51,153,255));
pDC->FillRect(&rFrame, &brush);
pDC->SetTextColor(RGB(20,0,0));
} int nBkMode = pDC->SetBkMode(TRANSPARENT);
UINT nFormat = DT_LEFT | DT_SINGLELINE | DT_VCENTER;
if (GetStyle() & LBS_USETABSTOPS)
nFormat |= DT_EXPANDTABS;
CFont font;
font.CreatePointFont(120, _T("宋体"));
pDC->SelectObject(&font);
// Calculate the rectangle size before drawing the text.
pDC->DrawText(ch,-1, &rFrame, nFormat);
pDC->SetBkMode(nBkMode); DeleteObject(&font);
}

  

最新文章

  1. Xamarin.IOS之多视图
  2. spring aop中的propagation的7种配置的意思
  3. 设置 Firewalld 防火墙控制对系统的访问
  4. 习总强调网络安全 ,咱们国产SSL证书必须加快普及速度
  5. x264宏块及子块划分方式
  6. Java1.5泛型指南中文版(Java1.5 Generic Tutorial)
  7. JDBC访问及操作SQLite数据库
  8. WinSock 异步I/O模型
  9. hdu 3939(勾股+容斥)
  10. 【安卓开发】Android系统中Parcelable和Serializable的区别
  11. 日志切割之Logrotate
  12. Notes for &quot;Python in a Nutshell&quot;
  13. linux 环境统配
  14. Bootstrap &amp; Font Awesome 学习笔记
  15. Python: 调用youtube_dl实现视频下载
  16. 谷歌AMP和百度MIP是什么鬼?
  17. uifont 字体详解
  18. .net 定时启动任务
  19. LINK : fatal error LNK1104: 无法打开文件“libboost_serialization-vc90-mt-gd-1_62.lib”
  20. python开发学习-day13(js、jQuery)

热门文章

  1. 开启和安装Kubernetes k8s 基于Docker For Windows
  2. Oracle中恢复drop掉的表中的数据
  3. es内存不够
  4. MySQL单机优化---SQL优化
  5. 【题解】Luogu P5328 [ZJOI2019]浙江省选
  6. Redis Cluster: (error) MOVED
  7. EgretWing链接微信开发工具调试问题
  8. ConcurrentDictionary,ConcurrentStack,ConcurrentQueue
  9. Java操作JSON数据(2)--Gson操作JSON数据
  10. ROS的安装与使用