Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.13;
Скачать: CL | DM;

Вниз

TString   Найти похожие ветки 

 
Dudee ©   (2005-10-24 20:45) [0]

Подскажите пожалуйста, как в StringGrid"e изменить цвет конкретной ячейки и стиль, шрифт текста в ней.
Работаю с 8:00 до 23:00, поэтому времени копаться в книжках к сожалению нет :( Вся надежда на вас мастера


 
Карелин Артем ©   (2005-10-24 20:55) [1]

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
begin
if (ACol=2) and (ARow=3) then
begin
 StringGrid1.Canvas.Brush.Color:=clRed;
 StringGrid1.Canvas.FillRect(Rect);
 StringGrid1.Canvas.TextOut(Rect.Left,Rect.Top,"asda");
 StringGrid1.Canvas.Font.Style:=[fsBold];
end;
end;


 
Думкин ©   (2005-10-25 06:30) [2]

> Работаю с 8:00 до 23:00, поэтому времени копаться в книжках
> к сожалению нет

Есть замечательная история про Резерфорда и его аспиранта. Найдете время - прочтите.
В ту же тему: сколько нужно прапорщиков чтобы завернуть лампочку? А сколько тех кто как-то работает с 8 до 23 и нифига не читает? Где больше? Кто быстрее?
:(


 
Dudee ©   (2005-10-26 15:55) [3]

Спасибо Артём, всё, как я и думал, очень просто и классно работает. Просто не знал, что у StringGrid"a есть Canvas :(

А ты думкин очень смешной, чуть не обосался, когда читал твой ответ!!! Петросяну пора на пенсию >:(


 
msguns ©   (2005-10-26 17:48) [4]

Просто как пример. Колонки стрингрида красятся под некий DBGrid, при этом последняя стрка, итоговая, выделяется.

procedure TMainForm.sgrChartDrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
begin
 if ARow>0 then
 with TStringGrid(Sender) do
   begin
    if (Tag>0) and (ARow=RowCount-1) then
       Canvas.Brush.Color := clBtnFace  // Режим вывода итоговой строки
    else
      if ACol<grAll.Columns.Count then
         Canvas.Brush.Color := grAll.Columns[ACol].Color
      else
         if ACol<20 then
            Canvas.Brush.Color := clMoneyGreen  // Доп.колонки гориз.итогов
         else
            Canvas.Brush.Color := clCream;        // Доп.колонки кон.остатков
    Canvas.TextRect(Rect,2,2,Cells[ACol,ARow]);
    Canvas.TextOut(Rect.Left+2,Rect.Top+2,Cells[ACol,ARow]);
   end;


 
Dudee ©   (2005-10-26 18:45) [5]

Спасибо msguns за примерчик


 
Dudee ©   (2005-10-26 18:46) [6]

Удалено модератором



Страницы: 1 вся ветка

Текущий архив: 2005.11.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.027 c
2-1129910821
Spinu Oleg
2005-10-21 20:07
2005.11.13
Указатели


14-1129913106
default
2005-10-21 20:45
2005.11.13
Доказательство FAT теоремы


1-1129686152
DDDeN
2005-10-19 05:42
2005.11.13
Определение обекта на TImage


9-1119898434
Felicheta
2005-06-27 22:53
2005.11.13
гром и молния


5-1110705262
Rius
2005-03-13 12:14
2005.11.13
Как разделить пакет на runtime и designtime?