自绘ListBox时总是会有焦点框出来遮住一部分内容,怎样才可以不显示这个焦点框呢,请指点(50分)

  • 主题发起人 主题发起人 cmd9x
  • 开始时间 开始时间
焦点框 是什么东西?? 不明白
 
就是那个DrawFocusRect产生和效果,ListBox选中的那一个Item会有一个焦点框啊
我想完全由自己来绘制Canvas所以不想要那个焦点框,不知道怎样去除掉
 
对~我也发现自绘的时候会出现那个讨厌的框框~不过没有想过消除它~就是有一点不好看`~
我也想知道怎么消除它~不过在有框框的地方再画一次框框就没有了~
 
重画一次是不能清除掉的,因为最下面还有一层蓝色,用来表示有输入焦点的.所以楼上的方法不行.
 
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
begin
//do something;
{ 下面这行就能消除所谓的焦点框了 }
if odFocused in State then DrawFocusRect(ListBox1.Canvas.Handle, Rect);
end;
 
Listbox1.indexitem=-1;
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部