度々の質問で申し訳ありません。
皆様、ご指導宜しくお願いします。
DBGridで、任意のレコードの色を変える方法がわかりません。
パラメータなどを色々調べたのですが、列の色しか変えれませんでした。
レコード全体の色を変えるのが理想ですが、
レコードの1項目のみでも構いませんので、
どなたかご指導宜しくお願いします。
例えば、
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
v: string;
begin
v := TDBGrid(Sender).DataSource.DataSet.FieldByName('Continent').AsString;
if v='South America' then begin
with TDBGrid(Sender) do begin
Canvas.Brush.Color := clGreen;
DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Table1.DatabaseName := 'DBDEMOS';
Table1.TableName := 'country.db';
Table1.Active := True;
DataSource1.DataSet := Table1;
DBGrid1.DataSource := DataSource1;
end;
こんな感じではいかがでしょう?
通りすがりさん ご指導ありがとうございます。
がんばってトライしてみます。
通りすがりさん。 ご指導ありがとうございました。
うまくできました。
色々と応用に頑張ります。
また、宜しくお願いします。
ツイート | ![]() |