单元格里的文字如果是'是',就用黑色表示.如果是'否',就用红色表示.希望可以简洁一点,因为我的一张图上有好多的表?Testringgrid可以不可以也象这样改变?
解决方案 »
- 查找添加的问题
- delphi日期计算,要月份
- 我只知道vc的struct的使用,不知道 delphi的record如何捣腾,请高人指点。
- 俺正在做一个收银系统,,收银部分要求支持刷银行卡..不知要怎么做,,请大家指点..有相关代码最好....进者有分...
- 关于dbgird生成流水号的另一个问题
- 看看,这是不是倒分啊?
- delphi连sybase的中文支持问题
- 有没有谁对fasereport特别熟的
- 如何在delphi中调用*.chm帮助文件,要求按下F1可以跳转到相应主题,100分
- 100奉送!关于使用HP LaserJet 1000 打印机碰到的问题!!!up也有分*************(斑竹也应该来瞧瞧!!!!)
- 加密狗问题请教。用过加密狗的朋友帮帮忙。
- 关于StringList 的 names 和 values 是如何使用的?
TStringGridEx = class(TStringGrid)
end;procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
if TStringGridEx(Sender).Cells[ACol, ARow] = '否' then
begin
TStringGridEx(Sender).OnDrawCell := nil;
try
TStringGrid(Sender).Canvas.Font.Color := clRed;
TStringGridEx(Sender).DrawCell(ACol, ARow, Rect, State);
finally
TStringGridEx(Sender).OnDrawCell := StringGrid1DrawCell;
end;
end;
end;
begin
with stringgrid do
begin
if (ACol > 0) and (ARow > 0) then
begin
if (ARow mod 2=0) then
Canvas.Brush.Color := clskyblue
else
Canvas.Brush.Color:=$00EBDDD3;
Canvas.FillRect(Rect);
Canvas.Font.Name := 'Courier New';
Canvas.TextOut(Rect.Left + 2, Rect.Top + 2, Cells[ACol, ARow]);
end;
end;
end;