DBGrid i pole Memo

0

Znalazłem sposób na wyświetlenie pola typu Memo w DBGrid:
http://delphi.about.com/library/weekly/aa030105a.htm
Polega to na dodaniu zdarzenia do danego pola on GetText:

procedure TForm1.DBTableDataGetText(
  Sender: TField;
  var Text: String;
  DisplayText: Boolean);
begin
  Text := Copy(DBTableData.AsString, 1, 50);
end;

problem w tym, ze dziala to jedynie jesli podlacze DBGrida do tabeli, ktora ma parametr TableDirect ustawiony na True ( wtedy tabela pobiera dane z bazy besposrednio - bez selectow), ale musze niektore dane pobierac za pomoca ADOQuery - czyli sql'em i wtedy ta metoda nie dziala - w kazdym wierszu jest ta sama wartosc pola Memo co w pierwszym. Wyglada to tak ze zdarzenie jest wywolywane raz dla calego zapytania, a nie dla kazdego wiersza. Jak sobie z tym poradzic ?
Moze SMDBGrid ktory na forum jest polecany, potrafi wyswietlic pola Memo

0

przecież masz

Sender: TField;

a nie DBTableData.AsString

0

wielkie dzieki! Takie proste, ze nie zauwazylem.

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