Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.969 c
3-1128081748
alol
2005-09-30 16:02
2005.11.13
adoconnection не находит нужного провайдера


6-1122621903
Klopan
2005-07-29 11:25
2005.11.13
IP > Region


2-1129547718
Parth
2005-10-17 15:15
2005.11.13
Консольное приложение: иероглифы


8-1117391048
Grief
2005-05-29 22:24
2005.11.13
воспроизведение звука


14-1129668273
Prohodil Mimo
2005-10-19 00:44
2005.11.13
Каковы преимущества тестирования с NUnit?




   Наверх