List Control插入数据后,出现的问题?求解决!

liuli7786 2011-09-15 04:36:16
列表控件中的一列如果插入的文本的宽度大于它的列宽,会显示"...",例如:插入文本“笔记本电脑”,会显示“笔记本...”,能不能显示不下的文本可以不显示,只显示“笔记本”,不要后面的“...”,该怎么解决啊?除了把每一列变宽外还有没有其他方法?
...全文
202 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 liuli7786 的回复:]

确实麻烦,不过这也没办法啊,要求就这么实现这个功能。
[/Quote]
那就自绘吧
网上随便搜搜好多例子
liuli7786 2011-09-16
  • 打赏
  • 举报
回复
确实麻烦,不过这也没办法啊,要求就这么实现这个功能。
向立天 2011-09-16
  • 打赏
  • 举报
回复
有"..."就是说明还有文字没显示全啊
这个很合理啊
如果要强行截断就只能重载自绘了
还要判断文字截取
多麻烦啊
liuli7786 2011-09-16
  • 打赏
  • 举报
回复
哦,确实是没有设置Own Draw风格,呵呵
向立天 2011-09-16
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 liuli7786 的回复:]

我自绘重写 DrawItem了,不知道为什么,程序没有执行DrawItem呢,我的继承关系是这样的:
Classs CColoredListCtrl::CListCtrl
{
......
}
Class VirtualListCtrl::CColoredListCtrl
{
在这里面实现了虚拟列表,并检索数据显示
在这里重写了DrawItem并在.cpp中实现该函数,但程序并……
[/Quote]
设置Own Draw风格
allen_lanyuhai 2011-09-16
  • 打赏
  • 举报
回复
我这个自绘的CListBox应该符合你的条件..
http://download.csdn.net/download/allen_lanyuhai/3303164

只要在DrawItem(..)这个函数里面把显示文字的语句pDC->DrawText(...)改成pDC->DrawText(szText, lstrlen(szText),&rcItem,DT_CENTER|DT_VCENTER|DT_NOPREFIX|DT_SINGLELINE|DT_END_ELLIPSIS);
就可以了...
liuli7786 2011-09-16
  • 打赏
  • 举报
回复
列表控件给加上owner draw style,并且该控件对应的变量定义为:VirtualListCtrl m_listPage;
liuli7786 2011-09-16
  • 打赏
  • 举报
回复
我自绘重写 DrawItem了,不知道为什么,程序没有执行DrawItem呢,我的继承关系是这样的:
Classs CColoredListCtrl::CListCtrl
{
......
}
Class VirtualListCtrl::CColoredListCtrl
{
在这里面实现了虚拟列表,并检索数据显示
在这里重写了DrawItem并在.cpp中实现该函数,但程序并没有执行DrawItem
}
zhd320 2011-09-16
  • 打赏
  • 举报
回复
顶楼主
罗平 2011-09-15
  • 打赏
  • 举报
回复
百度一下,有不少例子。
liuli7786 2011-09-15
  • 打赏
  • 举报
回复
DrawItem函数该如何写啊,我原来用的是虚拟列表,进行检索出来的数据,显示在虚拟列表上的。
liuli7786 2011-09-15
  • 打赏
  • 举报
回复
重写的DrawItem是虚函数吗,用不用加 WM_DRAWITEM()消息?
罗平 2011-09-15
  • 打赏
  • 举报
回复
自绘CListCtrl,重写 DrawItem,
在 DrawText中,把DT_END_ELLIPSIS 的风格去掉,这个就是加省略号的。

pDC->DrawText(szText, lstrlen(szText), &rcItem, DT_CENTER|DT_VCENTER|DT_NOPREFIX|DT_SINGLELINE|DT_END_ELLIPSIS);

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧