如何改变WINDDOWS选定的项目的颜色? (50分)

  • 主题发起人 主题发起人 zhangdamin
  • 开始时间 开始时间
Z

zhangdamin

Unregistered / Unconfirmed
GUEST, unregistred user!
如何改变WINDOWS选定的项目的颜色,如DBGRID选择行的背景颜色(即当前记录所在的行)?
 
请参看 Win32API: GetSysColor 帮助。
procedure SetSysColor(nIndex: Integer; AColor: TColor);
var
NewColor: LongInt;
begin
NewColor := ColorToRGB(AColor);
SetSysColors(1, nIndex, NewColor);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
//把高亮色变为红色。
SetSysColor(COLOR_HIGHLIGHT, clRed);
end;


 
DBgrid的OnDrawColumnCell事件:
if (your condition) then
DBGrid1.Canvas.Brush.Color:=(your request);
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
 
接受答案了.
 
后退
顶部