![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Прорисовка StringGrid [D7, Win2k]
DimonNew © (2004-12-07 18:47:00)Привет, подскажите пож-та. Прорисовываю ячейку в StringGrid - при определенном условии цвет шрифта меняю на красный, и в результате: если прорисовка в области видимости таблицы в окне, то все нормально, а если ячейка не видна, то в ней портиться текст. Вывожу следующим способом:
StrCell:=strgrRemain.CellRect(ACol,ARow);
StringGrid.Canvas.Font.Color:=clRed;
StringGrid.Canvas.Brush.Color:=clMenu;
DrawText(StringGrid.Canvas.Handle,PChar(StringGrid.Cells[ACol,ARow]),Length(StringGrid.Cells[ACol,ARow]),StrCell,Flag);< /CODE>
Что можно сделать, подскажите пож-та.
DimonNew (2004-12-08 10:36:00) [1]novice_man © - Спасибо большое!!! Заработало через TextRect.
DimonNew (2004-12-08 10:32:00) [2]Я имею в виду, когда прокручиваю скролом таблицу, та ячейка, в которой я меняю цвет шрифта, и портиться.
novice_man (2004-12-07 19:12:00) [3]И, что значит:
а если ячейка не видна, то в ней портиться текст.
Как ты знаешь что портится?
novice_man (2004-12-07 19:08:00) [4]DrawText(StringGrid.Canvas.Handle,PChar(StringGrid.Cells[ACol,ARow]),Length(StringGrid.Cells[ACol,ARow]),StrCell,Flag )
Может так?
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
......
StringGrid1.Canvas.TextRect(Rect, Rect.Left + 1, Rect.Top + 2, StringGrid1.Cells[ACol, ARow]);
......
end;
DimonNew (2004-12-07 18:48:00) [5]strgrRemain - StringGrid (опечатка)