1.怎样不显示行与行之间、列与列之间的分隔线?
2.怎样扩大行间距(是不是用插图像列表的方式?还有什么别的方式?)
3.怎样修改字的颜色和背景颜色?
我自己的listview:
而人家的listview显示效果(用spy++发现它确实是一个listview):
13 个解决方案
#1
1.网格可以有属性可以去掉
2.行间距用图片
2.行间距用图片
#2
1、在设置扩展样式SetExtendedStyle时不要加上
LVS_EX_GRIDLINES风格。
2、有两种方法:
①设置图像列表
把18改大点就可以增大行距。其中m_image是CImageList类型,m_list是CListCtrl类型。
②手动发送一个消息。这个方法比较复杂,需要派生CListCtrl一个类来实现。我只能提供几个关键词供你搜索:WM_WINDOWPOSCHANGED、MeasureItem、ON_WM_MEASUREITEM_REFLECT、列表行高度。
3修改字的颜色
但它是把所有行所有列的文字修改为同一个颜色,可能不符合你的需求。
修改背景色
这个需要自绘,实现起来也很复杂,你可以试试搜索关键词DrawItem、LVS_OWNERDRAWFIXED、FillSolidRect。
参考资源
1、《改变 CListCtrl、CHeaderCtrl 高度、字体、颜色和背景》 http://www.vckbase.com/index.php/wv/1550
2、 http://blog.csdn.net/ecbtnrt/article/details/6313723
3、 http://download.csdn.net/download/ecbtnrt/3182586
2、有两种方法:
①设置图像列表
m_image.Create(1, 18, ILC_COLOR | ILC_MASK, 0, 0);
m_image.Add(NULL);
m_list.SetImageList(&image, LVSIL_SMALL);
把18改大点就可以增大行距。其中m_image是CImageList类型,m_list是CListCtrl类型。
②手动发送一个消息。这个方法比较复杂,需要派生CListCtrl一个类来实现。我只能提供几个关键词供你搜索:WM_WINDOWPOSCHANGED、MeasureItem、ON_WM_MEASUREITEM_REFLECT、列表行高度。
3修改字的颜色
m_list.SetTextColor(RGB(0, 0, 0));
但它是把所有行所有列的文字修改为同一个颜色,可能不符合你的需求。
修改背景色
这个需要自绘,实现起来也很复杂,你可以试试搜索关键词DrawItem、LVS_OWNERDRAWFIXED、FillSolidRect。
参考资源
1、《改变 CListCtrl、CHeaderCtrl 高度、字体、颜色和背景》 http://www.vckbase.com/index.php/wv/1550
2、 http://blog.csdn.net/ecbtnrt/article/details/6313723
3、 http://download.csdn.net/download/ecbtnrt/3182586
#3
楼主 这是不是你要的情况?
#4
图片看不到 我重发一张
#5
如果想用MFC实现“人家的listview显示效果”,可能会很麻烦,需要做很多事情。
现在做MFC开发的很少了,讨论交流也少了。
MFC做界面现在不吃香了。
楼主不妨关注dulib界面库、soui界面库,做界面效果一流。
现在做MFC开发的很少了,讨论交流也少了。
MFC做界面现在不吃香了。
楼主不妨关注dulib界面库、soui界面库,做界面效果一流。
#6
这个很简单 只需要一行代码就搞定了
#7
怎样加上垂直滚动条风格呢?
#8
listctrl_.SetGridLines(XXX)
这个 就是 去掉风格线的代码。 其中XXX 是你自己定义的变量 BOOL值 ,可以*的切换
这个 就是 去掉风格线的代码。 其中XXX 是你自己定义的变量 BOOL值 ,可以*的切换
#9
这不是弈城的界面吗,而且竟然是个5D
#10
Header 和 ListCtrl都可以自绘的, 楼主, 貌似重载 OnDrawItem就行了, 我曾经画过比他复杂多了的!
#11
你是几D?
#12
BCG没有这个功能吗?
#13
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了 疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知
见此回复三日内无回应
我们将强制结帖
相关规定详见界面 界面版关于版主结帖工作的具体办法
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了 疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知
见此回复三日内无回应
我们将强制结帖
相关规定详见界面 界面版关于版主结帖工作的具体办法
#1
1.网格可以有属性可以去掉
2.行间距用图片
2.行间距用图片
#2
1、在设置扩展样式SetExtendedStyle时不要加上
LVS_EX_GRIDLINES风格。
2、有两种方法:
①设置图像列表
把18改大点就可以增大行距。其中m_image是CImageList类型,m_list是CListCtrl类型。
②手动发送一个消息。这个方法比较复杂,需要派生CListCtrl一个类来实现。我只能提供几个关键词供你搜索:WM_WINDOWPOSCHANGED、MeasureItem、ON_WM_MEASUREITEM_REFLECT、列表行高度。
3修改字的颜色
但它是把所有行所有列的文字修改为同一个颜色,可能不符合你的需求。
修改背景色
这个需要自绘,实现起来也很复杂,你可以试试搜索关键词DrawItem、LVS_OWNERDRAWFIXED、FillSolidRect。
参考资源
1、《改变 CListCtrl、CHeaderCtrl 高度、字体、颜色和背景》 http://www.vckbase.com/index.php/wv/1550
2、 http://blog.csdn.net/ecbtnrt/article/details/6313723
3、 http://download.csdn.net/download/ecbtnrt/3182586
2、有两种方法:
①设置图像列表
m_image.Create(1, 18, ILC_COLOR | ILC_MASK, 0, 0);
m_image.Add(NULL);
m_list.SetImageList(&image, LVSIL_SMALL);
把18改大点就可以增大行距。其中m_image是CImageList类型,m_list是CListCtrl类型。
②手动发送一个消息。这个方法比较复杂,需要派生CListCtrl一个类来实现。我只能提供几个关键词供你搜索:WM_WINDOWPOSCHANGED、MeasureItem、ON_WM_MEASUREITEM_REFLECT、列表行高度。
3修改字的颜色
m_list.SetTextColor(RGB(0, 0, 0));
但它是把所有行所有列的文字修改为同一个颜色,可能不符合你的需求。
修改背景色
这个需要自绘,实现起来也很复杂,你可以试试搜索关键词DrawItem、LVS_OWNERDRAWFIXED、FillSolidRect。
参考资源
1、《改变 CListCtrl、CHeaderCtrl 高度、字体、颜色和背景》 http://www.vckbase.com/index.php/wv/1550
2、 http://blog.csdn.net/ecbtnrt/article/details/6313723
3、 http://download.csdn.net/download/ecbtnrt/3182586
#3
楼主 这是不是你要的情况?
#4
图片看不到 我重发一张
#5
如果想用MFC实现“人家的listview显示效果”,可能会很麻烦,需要做很多事情。
现在做MFC开发的很少了,讨论交流也少了。
MFC做界面现在不吃香了。
楼主不妨关注dulib界面库、soui界面库,做界面效果一流。
现在做MFC开发的很少了,讨论交流也少了。
MFC做界面现在不吃香了。
楼主不妨关注dulib界面库、soui界面库,做界面效果一流。
#6
这个很简单 只需要一行代码就搞定了
#7
怎样加上垂直滚动条风格呢?
#8
listctrl_.SetGridLines(XXX)
这个 就是 去掉风格线的代码。 其中XXX 是你自己定义的变量 BOOL值 ,可以*的切换
这个 就是 去掉风格线的代码。 其中XXX 是你自己定义的变量 BOOL值 ,可以*的切换
#9
这不是弈城的界面吗,而且竟然是个5D
#10
Header 和 ListCtrl都可以自绘的, 楼主, 貌似重载 OnDrawItem就行了, 我曾经画过比他复杂多了的!
#11
你是几D?
#12
BCG没有这个功能吗?
#13
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了 疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知
见此回复三日内无回应
我们将强制结帖
相关规定详见界面 界面版关于版主结帖工作的具体办法
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了 疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知
见此回复三日内无回应
我们将强制结帖
相关规定详见界面 界面版关于版主结帖工作的具体办法