各位大虾:ListView中不同行的汉字用不同颜色如何实现?急急急急!! 能给个例子吗?拜托多谢!!!!!my email : [email protected] 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 应该自画ListItem吧。设置LVS_OWNERDRAWFIXED属性,然后重载DrawItem函数就可以用DRAWITEMSTRUCT结构中的hdc输出需要的字体与颜色了。你搜索一下,应该有这方面的贴子。 完成这个任务要注意几点:1.对于ListView(也就是ListCtrl),只有置为"Report"显示方式才可以进行自绘 (当然,对于所有的窗口控件都可以直接得到其dc并在OnPaint()中绘制,但 这不是个好主意,特别是需要自己丈量尺寸的情况下)2.要把ListView设置成Owner draw fixed,或者在初始化时向ListView控件发送 LVS_OWNERDRAWFIXED消息 (以上两步都可以在设计对话框时通过属性对话框来设置)3.重载DrawItem()函数,在其中进行绘制工作 剩下的事就好办了,只要在DrawItem的参数lpDrawItemStruct中得到各个绘制 用的属性,按照你的要求画成了,对于设置字体和颜色并不是困难的事 对于字体,你可以用CreateFontIndirect或CreateFont创建,也可以用GetFont得到对话框的字体,并选进ListView的dc中,如果要改变字体的大小恐怕只有用CreateFontIndirect或CreateFont了,如果用DrawText虽然可以控制字符串的尺寸,但不能改变其字体,画出来不太好看 vonvon,您好。 我的程序是一个单文档的有两个切分视的的界面,第一个是从 CListView 类继承,第二个是从 CView 类继承的,重载DrawItem()函数好像要在CListCtrl的派生类中进行,请问我的ClistView派生类如何才能重载DrawItem()函数呢? 到 CodeGuru看看,肯定有!!!!我好象看见过。即使没有也有类似的,仿照着自己写吧,不能什么都用别人的呀! 你不妨看一看msdn中关于CListView的说明,它只不过给CListCtrl加了个外壳,让它带有view的一些特性,如果你不需要使用这些特性的话,不如直接从CListCtrl派生一个新类,用在你的切分窗口中 哈,多谢了,真复杂,不过我已经解决了,再次表示感谢! 我今天下午在网上又找到了一份资料,它是用 NM_CUSTOMDRAW 消息函数来实现字体颜色的改变,我觉得比用DrawItem()好,所以就OK啦,哈哈哈哈哈 如何解决软件之间的排斥,自己软件是vc开发的。价钱好商量。 寻深圳熟悉VC和桌面程序开发朋友 请高手帮我推荐一本关于讲解宏定义的书,c或c++都行,关键是比较全而细的,,谢谢啦! 高分求助:关于ATL COM ASP第一次调用正常,关闭IE再调用时就出现莫名的错误 CopyFileEx的问题? 程序直接在VC上点击运行和把debug全部拷贝出来在执行.exe文件有什么区别吗? 如何在CXXXView 类外调用...... 十分简单、在线等候、当即给分 关于天敏SDK2000视频采集卡 hook问题请教 谁有数字转化为汉字的现成货币算法,小弟急需!!! 请问为何自定义的类不能引用,谢谢!
设置LVS_OWNERDRAWFIXED属性,然后重载DrawItem函数就可以用DRAWITEMSTRUCT结构中的hdc输出需要的字体与颜色了。
你搜索一下,应该有这方面的贴子。
1.对于ListView(也就是ListCtrl),只有置为"Report"显示方式才可以进行自绘
(当然,对于所有的窗口控件都可以直接得到其dc并在OnPaint()中绘制,但
这不是个好主意,特别是需要自己丈量尺寸的情况下)
2.要把ListView设置成Owner draw fixed,或者在初始化时向ListView控件发送
LVS_OWNERDRAWFIXED消息
(以上两步都可以在设计对话框时通过属性对话框来设置)
3.重载DrawItem()函数,在其中进行绘制工作
剩下的事就好办了,只要在DrawItem的参数lpDrawItemStruct中得到各个绘制
用的属性,按照你的要求画成了,对于设置字体和颜色并不是困难的事
用GetFont得到对话框的字体,并选进ListView的dc中,如果要改变
字体的大小恐怕只有用CreateFontIndirect或CreateFont了,如果
用DrawText虽然可以控制字符串的尺寸,但不能改变其字体,画出来
不太好看
我的程序是一个单文档的有两个切分视的的界面,第一个是从 CListView 类继承,第二个是从 CView 类继承的,重载DrawItem()函数好像要在CListCtrl的派生类中进行,请问我的ClistView派生类如何才能重载DrawItem()函数呢?
让它带有view的一些特性,如果你不需要使用这些特性的话,不如直接从CListCtrl
派生一个新类,用在你的切分窗口中
我今天下午在网上又找到了一份资料,它是用 NM_CUSTOMDRAW 消息函数来实现字体颜色的改变,我觉得比用DrawItem()好,所以就OK啦,哈哈哈哈哈