Tlistview选中的颜色,Viewstyle为vsReport,RowSelect为true,CheckBoxs为True,SmallImages的模式下

gwhdaxia 2008-11-27 03:48:01
在条选的情况下,怎么样选种某一条的时候把以前的默认的蓝色改成红色

另外一个帖子忘记加分了,从新开一个
...全文
92 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
genispan 2008-11-29
  • 打赏
  • 举报
回复
帮顶
scutLiu 2008-11-28
  • 打赏
  • 举报
回复
checkbox本身不是item行的内容,而是附加在item行上的
所以需要特别处理才行
gwhdaxia 2008-11-28
  • 打赏
  • 举报
回复
怎么没人要分吗,随便顶,我好揭贴散分

周日来揭贴散分
gwhdaxia 2008-11-27
  • 打赏
  • 举报
回复
公司不让用,都是自己写的,现在标题修改颜色已经搞好了,隔行的颜色也可以了,就是差这一点,选中的时候,前面的checkbox不刷新
僵哥 2008-11-27
  • 打赏
  • 举报
回复
建议使用现成的控件。某些第三方的控件支持颜色设置。
gwhdaxia 2008-11-27
  • 打赏
  • 举报
回复
我自己在CustomDrawItem里重新画过了

if (cdsselected in state) or(cdsFocused in State) then
begin
Canvas.Font.Color:=clWhite;
Canvas.brush.Color:=FRowFocusedColor;
P:=item.displayrect(drBounds);
p.Left := Item.Position.X+16;
Canvas.FillRect(p);

Canvas.brush.Color:=clblue;
P.Bottom := p.Bottom-1 ;
Canvas.Pen.Width := 1;
Canvas.Pen.Style := psDash ;
Canvas.FrameRect(p);

defaultdraw:=false;
end;

现在画出来之后,checkbox点了之后没有更新,只有切换到别的记录条上之后,这个checkbox才能显示出刚才被选或者取消选择,


谁有好点的方法,

5,388

社区成员

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

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