ListView怎样改变每行的字体和颜色?谢谢 |
答題得分者是:Vicen
|
9108
一般會員 發表:5 回覆:1 積分:1 註冊:2005-05-05 發送簡訊給我 |
|
Vicen
高階會員 發表:13 回覆:145 積分:151 註冊:2005-03-14 發送簡訊給我 |
在ListView控件的AdvancedCustomDrawItem事件里做,可以改字体、大小、颜色、样式,还可以改底色。 下面是个例子给你,看看对你有没用处。
procedure ListViewAdvancedCustomDrawItem(Sender: TCustomListView; Item: TListItem; State: TCustomDrawState; Stage: TCustomDrawStage; var DefaultDraw: Boolean); Begin //这里可以根据条件来设定每行的字体和颜色,至于什么条件就自己决定了。 //比如根据项目的图标来判断(我举个例子而已) Case Item.ImageIndex Of 0://图标索引为0的项目 begin //字体为红色 ListView.Canvas.Font.Color := ClRed; //大小为10号字 ListView.Canvas.Font.Size := 10; //粗体 ListView.Canvas.Font.Style := [fsBold]; //背景色为黄色 ListView.Canvas.Brush.Color := clYellow; end; 1://图标索引为1的项目 begin //字体为蓝色 ListView.Canvas.Font.Color := ClBlue; //大小为9号字 ListView.Canvas.Font.Size := 9; //普通体 ListView.Canvas.Font.Style := []; //背景色为黄色 ListView.Canvas.Brush.Color := clWhite; end; End; End;当然你还可以去根据每列的内容等进行判断,祝你好运。 |
9108
一般會員 發表:5 回覆:1 積分:1 註冊:2005-05-05 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |