如何在TLISTVIEW控件里改变某一行字的颜色

jerrycui 2004-10-08 05:27:37
如何在TLISTVIEW控件里改变某一行字的颜色
...全文
192 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jerrycui 2004-11-01
  • 打赏
  • 举报
回复
谢谢大家,我已经解决了,就是好长时间没有来。
WGYKING 2004-10-09
  • 打赏
  • 举报
回复
学习。。。
jackie168 2004-10-09
  • 打赏
  • 举报
回复
回复人: WGYKING(修罗是谁?!) ( ) 信誉:102 2004-10-09 00:50:00 得分: 0


学习。。。

>>> WoKao~~

===========================================================================

樓主,如果我的代碼能解決問題的話,把分加給WGYKING(修罗是谁?!)
gemouzhi 2004-10-09
  • 打赏
  • 举报
回复
要是动态改的话,只好画出来了,用ListView1的Canvas
jackie168 2004-10-08
  • 打赏
  • 举报
回复
if Odd(Item.Index) then
begin
Sender.Canvas.Brush.Color:=clInfoBk;
Sender.Canvas.Font.Color:=clblue;
exit;
end
else
Sender.Canvas.Brush.Color:=clSkyBlue;
sender.canvas.Font.Color:=clred;
jackie168 2004-10-08
  • 打赏
  • 举报
回复
procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if Odd(Item.Index) then
Sender.Canvas.Brush.Color:=clblue
else
Sender.Canvas.Brush.Color:=clgray;
end;
exu 2004-10-08
  • 打赏
  • 举报
回复
可以改变的,ListView提供了OnCustomDrawItem等事件。
procedure TForm1.lv1CustomDrawSubItem(Sender: TCustomListView;
Item: TListItem; SubItem: Integer; State: TCustomDrawState;
var DefaultDraw: Boolean);
begin
if SubItem=1 then
Sender.Canvas.Brush.Color:=clblue
else
Sender.Canvas.Brush.Color:=clgray;
end;
就可以改变。
具体你可以参考一下delphi的Demo
(Virtual listview)

jerrycui 2004-10-08
  • 打赏
  • 举报
回复
希望大家赐教哦,我是从VB刚转DELPHI。

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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