J
jony
Unregistered / Unconfirmed
GUEST, unregistred user!
我需要在Stringgrid中将符合条件的几笔资料更变颜色,但发现它每一笔都从新刷新
比如说第一笔和第四笔符合条件,但只对第四笔进行颜色更改,不知是否我的程序有问题
请各位高手帮我看看,谢谢!(i1是个全局变量,第一笔符合条件的i1就是1,第四笔符合
条件的i1就是4,然后对这一笔进行更改颜色)
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
if query3.fieldbyname('已选').asboolean=true then arow:=i1;
if (Arow=i1) then begin
with Stringgrid1.Canvas do
begin
FillRect(Rect);
Font.Color:=clred;
TextOut(Rect.left,Rect.top,Stringgrid1.cells[Acol,Arow]);
end;
end
else
with Stringgrid1.Canvas do
begin
FillRect(Rect);
Font.Color:=clblack;
TextOut(Rect.left,Rect.top,Stringgrid1.cells[Acol,Arow]);
end;
end;
jony
比如说第一笔和第四笔符合条件,但只对第四笔进行颜色更改,不知是否我的程序有问题
请各位高手帮我看看,谢谢!(i1是个全局变量,第一笔符合条件的i1就是1,第四笔符合
条件的i1就是4,然后对这一笔进行更改颜色)
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
if query3.fieldbyname('已选').asboolean=true then arow:=i1;
if (Arow=i1) then begin
with Stringgrid1.Canvas do
begin
FillRect(Rect);
Font.Color:=clred;
TextOut(Rect.left,Rect.top,Stringgrid1.cells[Acol,Arow]);
end;
end
else
with Stringgrid1.Canvas do
begin
FillRect(Rect);
Font.Color:=clblack;
TextOut(Rect.left,Rect.top,Stringgrid1.cells[Acol,Arow]);
end;
end;
jony