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

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

StringGird pt3


Bobby Digital ©   (2005-01-21 20:11:00) 

Как мне расскрасить, серым цветом, нулевую строку в SringGrid (у SringGrid св-ва fixedRow и fixedCol равны 0), и сделать чтоб весь текст в нулевой строке был подчеркнутым.

Если можно то на примере, пример по адресу   http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988624493&n=17работет не так как  мне надо, я еще новичек в Делфи, и пока не сталкивался с рисованием на компонентах, заранее спасибо.


Bobby Digital   (2005-01-21 21:35:00) [1]

спасибо ... я же не полный Ламер мне и первго варианта полне хватило


begin...end   (2005-01-21 20:37:00) [2]

Со мной сегодня определённо чего-то не так :-)))
Вот окончательный вариант:

procedure TForm.StringGridDrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
begin
 with (Sender as TStringGrid), Canvas do
   if ARow = 0 then
   begin
     if ACol = 0 then
       Brush.Color := clSilver;
     FillRect(Rect);
     Font.Color := clRed;
     Font.Style := [fsUnderLine];
     TextOut(Rect.Left, Rect.Top, Cells[ACol, ARow])
   end
end.


Всё... Пойду к экзамену готовиться...


begin...end   (2005-01-21 20:28:00) [3]

> Bobby Digital ©   (21.01.05 20:11)

А, извиняюсь. Ведь нужно, чтобы во всейнулевой строке текст был подчёркнутым.
Тогда так:

procedure TForm.StringGridDrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
begin
 with (Sender as TStringGrid), Canvas do
   if ARow = 0 then
   begin
     if ACol = 0 then
     begin
       Brush.Color := clSilver;
       FillRect(Rect)
     end;
     Font.Color := clWhite;
     Font.Style := [fsUnderLine];
     TextOut(Rect.Left, Rect.Top, Cells[ACol, ARow])
   end
end.


begin...end   (2005-01-21 20:19:00) [4]

> Bobby Digital ©   (21.01.05 20:11)

procedure TForm.StringGridDrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
begin
 if (ACol = 0) and (ARow = 0) then
   with (Sender as TStringGrid), Canvas do
   begin
     Brush.Color := clSilver;
     FillRect(Rect);
     Font.Color := clWhite;
     Font.Style := [fsUnderLine];
     TextOut(Rect.Left, Rect.Top, Cells[ACol, ARow])
   end;
end.


Наверх

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