![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
выделение записей цветом простом DBGRID е или DBGRIDEH е
Stas © (2003-02-24 16:44:00)Если кто знает как выделить запись цветом в простом Dbgride или в Dbgrideh, подскажите пожалуйста.
ava (2003-02-24 22:53:00) [1]procedure TForm1.DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
If ( условие ) then With DBGrid2.Canvas do
Begin
FillRect(Rect);
Font.Color := clRed;
TextOut (Rect.left+1, Rect.Top+2, Column.Field.Text)
end else
DBGrid2.DefaultDrawColumnCell (Rect,DataCol,Column,State)
end;
AM (2003-02-24 19:19:00) [2]На королевстве Delphi был?
http://www.delphikingdom.com/helloworld/dbgridcolor.htm
ermserg (2003-02-24 19:10:00) [3]to Leshiy:
Eto ne pravilno i chrevato kuchey Exceptions ( strtofloat(Column.Field.Text) ). Zachem risovat na Canvase esli dostatochno izmenit Font i Brush kak tebe nuzhno i vizvat DefaultDrawColumnCell.
to Stas. Ya 90% uveren, chto etot vopros est v FAQ"e.
Леший_ (2003-02-24 17:05:00) [4]Это небольшой фрагмет в виде примерчика...
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var Im1: TBitmap;
begin
with DBGrid1.Canvas do
begin
if (Column.Field.FieldName = "......") and
not (gdSelected in State) then
if strtofloat(Column.Field.Text)=1 then
begin
Brush.Color:=clRED;
Font.Color:=clWHite;
FillRect(Rect);
TextOut(Rect.Left+2,Rect.Top+2,FormatFloat("### ### ###.##",StrToFloat(Column.Field.Text)));
exit;
end;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State)
end;