Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

выделение строк цветом в 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


Наверх

Титульная страница Поиск, карта сайта Написать письмо