Write an OnDrawCell event handler to draw the contents
of all the cells in the grid.
Как вывести надпись в центре ячейки TStringGrid?
Подскажите кто-знает.
Цитата: santey
В свойствах компонента TStringGrid такого параметра нет, а может быть есть другие способы?
Подскажите кто-знает.
Подскажите кто-знает.
Используй событие OnDrawCell и рисуй текст вручную.
Код:
Что-то вроде ...
Код:
void __fastcall TForm1::StringGrid1DrawCell(TObject *Sender, int ACol,
int ARow, TRect &Rect, TGridDrawState State)
{
// определим ширину текста в шрифте StringGrid1
int tw = StringGrid1->Canvas->TextWidth(StringGrid1->Cells[ACol][ARow]);
// определим высоту текста в шрифте StringGrid1
int th = StringGrid1->Canvas->TextHeight(StringGrid1->Cells[ACol][ARow]);
// зная ширину и высоту ячейки по прямоугольной области её рисования
// Rect.Width() и Rect.Height()
// выводим текст с нужным смещением по горизонтали и по вертикали
StringGrid1->Canvas->TextRect( Rect,
Rect.Left + ( Rect.Width() - tw )/2,
Rect.Top + ( Rect.Height() - th )/2,
StringGrid1->Cells[ACol][ARow] );
}
int ARow, TRect &Rect, TGridDrawState State)
{
// определим ширину текста в шрифте StringGrid1
int tw = StringGrid1->Canvas->TextWidth(StringGrid1->Cells[ACol][ARow]);
// определим высоту текста в шрифте StringGrid1
int th = StringGrid1->Canvas->TextHeight(StringGrid1->Cells[ACol][ARow]);
// зная ширину и высоту ячейки по прямоугольной области её рисования
// Rect.Width() и Rect.Height()
// выводим текст с нужным смещением по горизонтали и по вертикали
StringGrid1->Canvas->TextRect( Rect,
Rect.Left + ( Rect.Width() - tw )/2,
Rect.Top + ( Rect.Height() - th )/2,
StringGrid1->Cells[ACol][ARow] );
}
Цитата: santey
В свойствах компонента TStringGrid такого параметра нет, а может быть есть другие способы?
Подскажите кто-знает.
Подскажите кто-знает.
Перед тем как спрашивать заглядывай в FAQ's
http://forum.codenet.ru/showthread.php?t=26390