Multiline w TStringGrid

0

Tak jak w temacie ... Czy da rady umiescic kilka lini w StringGrid ??

0

Tzn. kilka lini tekstu w jednej komurce ??

0

Zdaje się, że tylko za pomocą TStringGrid.Canvas.TextOut, dobierając odpowiednio wspólrzędne linijek tekstu i rozszerzając samemu komórki.

0

w OnDrawCell coś w okolicach tego:

if Length(S)>0 then begin
  drawrect:=rect;
  DrawText(StringGrid1.Canvas.Handle, Pchar(S), Length(S), drawrect, dt_calcrect or dt_wordbreak or dt_left );
  If (drawrect.bottom-drawrect.top)>Stringgrid1.RowHeights[ARow] then
    Stringgrid1.RowHeights[ARow]:=(drawrect.bottom-drawrect.top)
  else
  begin
    drawrect.Right:=rect.right;
    Stringgrid1.Canvas.FillRect(drawrect);
    DrawText(Stringgrid1.Canvas.Handle, Pchar(S), Length(S), drawrect, dt_wordbreak or dt_left);
  end;

S to oczywiście tekst komórki

0

ok to dziala ale jesli reczeni poszeze komorke to potem zostaje ona wysoka - robilem : StringGrid.RowHeights[ARow]:=StringGrid.DefaultRowHeight; jesli komroka jest normlanego rozmiaru ale wtedy poprzednie tez zmeiniaja rozmiar i wychodzi na to ze jest nonstop odswizane i widac biale tlo :/

dodalem warunek
if Acol=1 then
StringGrid.RowHeights[ARow]:=StringGrid.DefaultRowHeight;
niestety nadal to samo

1 użytkowników online, w tym zalogowanych: 0, gości: 1