Тема: Delphi StringGrid
Показать сообщение отдельно

  #2  
Старый 22.02.2009, 22:40
eLWAux
Постоянный
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


Отправить сообщение для eLWAux с помощью ICQ
По умолчанию

в обработчик DrawCell допиши:

Код:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
begin
   StringGrid1.Canvas.FillRect(Rect);
   DrawText(
      StringGrid1.Canvas.Handle,
      Pchar(StringGrid1.Cells[Acol, Arow]),
      Length(StringGrid1.Cells[Acol, Arow]),
      Rect, dt_calcrect Or dt_wordbreak Or dt_left);

   If (Rect.bottom - Rect.top) <> StringGrid1.RowHeights[ARow] Then
      StringGrid1.RowHeights[ARow] := (Rect.bottom - Rect.top)
   Else

      DrawText(
         StringGrid1.Canvas.Handle,
         Pchar(StringGrid1.Cells[Acol, Arow]),
         Length(StringGrid1.Cells[Acol, Arow]),
         Rect, dt_wordbreak Or dt_left);

end;
и компонент сам поставит переносы там, где надо