我是靠谱客的博主 执着秋天,这篇文章主要介绍Delphi实现Listbox中的item根据内容显示不同颜色的方法,现在分享给大家,希望可以做个参考。

本文简述了Delphi实现Listbox中的item根据内容显示不同颜色的方法,实现步骤如下:

ListBox1 的 Style 属性改为 lbOwnerDrawVariable

在ListBox的OnDrawItem事件裡,根据item的值,改变Canvas属性

示例代码如下:

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin    //字体用原来默认的颜色
 if Odd(index) then   //当items的index为奇数时的颜色
 begin
  listbox1.Canvas.Brush.Color:=clwindow;
  ListBox1.Canvas.TextRect(Rect,rect.Left,Rect.Top,ListBox1.Items[index]);
 end
 else     //当items的index为偶数时的颜色
 begin
  listbox1.Canvas.Brush.Color:=clinactivecaptiontext;
  ListBox1.Canvas.TextRect(Rect,rect.Left,Rect.Top,ListBox1.Items[index]);
 end;
 if  odSelected  in  state  then    //当选定时的颜色
 begin
  listbox1.Canvas.Brush.Color:=clhighlight;
  ListBox1.Canvas.TextRect(Rect,rect.Left,Rect.Top,ListBox1.Items[index]);
 end;
end;

最后

以上就是执着秋天最近收集整理的关于Delphi实现Listbox中的item根据内容显示不同颜色的方法的全部内容,更多相关Delphi实现Listbox中内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(159)

评论列表共有 0 条评论

立即
投稿
返回
顶部