![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
выделение строк цветом в StringGrid [D5, WinXP]
Adm. Beckett © (2002-06-30 14:27:00)Уважаемые Мастера!
Помогите с сабжем. Через canvas получается ерунда - при скроллинге grid`а все идет к черту... Может компонент какой есть?...
Adm. Beckett (2002-07-01 00:58:00) [1]хех :)) Спасибо вам, люди! Тема закрыта.
jedi (2002-06-30 15:27:00) [2]const
cCursor=55295;
LYellow=14811135;
DYellow=8257535;
DDYellow=5150383;
procedure TfrmMain.StringGrid1DrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState);
begin
if StringGrid.ColWidths[ACol]<StringGrid.Canvas.TextWidth(StringGrid.Cells[ACol, ARow])-2 then
StringGrid.ColWidths[ACol]:=StringGrid.Canvas.TextWidth(StringGrid.Cells[ACol, ARow])+2;
if (ARow mod 2=1) then
StringGrid.Canvas.Brush.Color:=LYellow
else
StringGrid.Canvas.Brush.Color:=DYellow;
StringGrid.Canvas.Font.Style:=[];
StringGrid.Canvas.Font.Color:=clBlack;
if (gdSelected in State) then
StringGrid.Canvas.Brush.Color:=CCursor;
StringGrid.Canvas.Font.Name:="Courier New";
if ARow=0 then
begin
StringGrid.Canvas.Font.Name:="Courier New";
StringGrid.Canvas.Font.Style := [fsBold];
StringGrid.Canvas.Brush.Color:= clWhite;//CCursor;
end;
StringGrid.Canvas.TextRect(Rect, Rect.Left, Rect.Top, StringGrid.Cells[ACol, ARow]);
end;
Anatoly Podgoretsky (2002-06-30 15:16:00) [3]F1|TstringGris|Events|OnDrawCell|Example
Adm. Beckett (2002-06-30 14:55:00) [4]Подстажите, plz! Хотя бы кусок кода с выделенной цветом строкой!
Anatoly Podgoretsky (2002-06-30 14:49:00) [5]Чуть что так сразу компоненет, конечно есть другие компоненты, но проще рисовать в OnDrawCell