Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DBGrid и поля с типом MEMO [D7, XP]


dasha ©   (2006-12-02 16:16:00) 

А как  сделать чтоб DBGrid отображал текст  поля с типом MEMO :p


MsGuns   (2006-12-02 17:40:00) [1]

Например, в событии OnGetText мемо-поля написать:

Text := Sender.AsString;

В это случае в ячейке будет отображаться только видимая часть (лидирующая) содержимого поля.

Если требуется дать возможность непосредственно в ячейках просматривать полное содержимое мемо как многострочного текста, придется немного попариться, "ручками" рисуя в текущей ячейке TMemo/TDBMemo, куда соответственно перед показом запихивать содержимое.

Часто приемлимым решением становится достаточно легко реализуемое:
Создается форма FormStyle := fsStayOnTop, на все пространство которой кладется TMemo (Align := alClient).
По событию AfterScroll/AfterOpen/AfterRefresh в это мемо просто переписывается содержимое мемополя текущей записи датасета.
Пользователь может как менять размеры окна с текстом, так и расположить его в любом месте экрана так, как ему удобно. Либо закрыть вовсе за ненадобностью - информативность вида самого грида при этом только выиграет.


PZ   (2006-12-02 17:27:00) [2]

> [0] dasha   (02.12.06 16:16)

Скорее всего никак. Для отображения поля Memo есть компонент TDBMemo.


Наверх

Титульная страница Поиск, карта сайта Написать письмо