Builder C++ -> Tstringgrid -> Font -> Style

  • Автор темы sqrk
  • Дата начала
Статус
Закрыто для дальнейших ответов.
S

sqrk

Гость
#1
Здравствуйте уважаемые программисты!


Тут вдруг понадобилось выделить некоторые строки таблицы TStringGrid. Желательно стилем шрифта. Вот только если определить стиль текста, то он применяется для всех строк сразу (даже еслим изменение стиля шрифта стоит после того как некоторые строки заполнены). А мне бы только для некоторых.


Кто-нибудь сталкивался с такой задачкой? :unsure:
 
S

Sensei

Гость
#2
Используй метод TCustomGrid::DrawCell

virtual void __fastcall DrawCell(int ACol, int ARow, const TRect &ARect, Grids::TGridDrawState AState)

п.с. придеться помучаться но ... результат будет норм )
 
S

sqrk

Гость
#3
Что-то я не пойму. Для текущей таблицы нет такого метода. Мне объект новый надо создать? Из help не тоже не понятно как делать.


Не покажите ли кусочек кода... :unsure:
 
6

62316e

Гость
#4
Вот привем, который че-то делает...
Код:
void __fastcall TForm1::StringGrid1DrawCell(TObject *Sender, int ACol,
int ARow, TRect &Rect, TGridDrawState State)
{
if (ACol == 1 && ARow == 1)
{
dynamic_cast<TStringGrid*>(Sender)->Canvas->Brush->Color = clRed;
dynamic_cast<TStringGrid*>(Sender)->Font->Color = clRed;
}
else
{
dynamic_cast<TStringGrid*>(Sender)->Font->Color = clBlack;
}
dynamic_cast<TStringGrid*>(Sender)->Canvas->TextRect(Rect, Rect.Left+2, Rect.Top+2, dynamic_cast<TStringGrid*>(Sender)->Cells[ACol][ARow]);


}
 
Статус
Закрыто для дальнейших ответов.