Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Форматированный текст


Автор: Гульмира 3.3.2011, 11:32
Здравствуйте.
Есть данные к-ые берутся из Mssql  --> таблица  --> поле TLG_TXT (text(16))
При выводе из БД в DBGRIDEH в поле TEXT отображалось слово MEMO вместо текста.  
Изменила свойство DBGRIDEH --> properties --> DrawMemoText --> true и текст начал отображатся , но без форматирования, т.е. вместо переноса строк стоит символ ║и текст выводится в одну длину.

Wordwrap=true не помогает.
Так тоже...
Код

procedure TFmPln.DBGridEh4Columns5GetCellParams(Sender: TObject;
  EditMode: Boolean; Params: TColCellParamsEh);
begin
Params.Text:=DM1.QueryTlg.FieldByName('TLG_TXT').AsString ;
end;

Подкажите как нормально вывести текст???

Автор: Akella 3.3.2011, 13:43
Цитата(Гульмира @  3.3.2011,  11:32 Найти цитируемый пост)
 но без форматирования, т.е. вместо переноса строк стоит символ ║и текст выводится в одну длину.

в событии OnSetSetx колонки датасета нужно выполнять замену StringReplace, я уже не помню что на что. Посмотри в дебаггере, что это за две палочки и замени их на #13#10, как-то так, не помню уже

Автор: Гульмира 3.3.2011, 14:01
в мыслях было применить StringReplace, но думала через параметры свойства можно решить.
Спасибо  smile 

Автор: Vaskevych 3.3.2011, 15:16
B dbgridEh есть опция "отображать содержимое мемо" поищи !!!!  smile 

Автор: Akella 3.3.2011, 17:49
Vaskevych, а если чуть внимательнее прочитать, то можно увидеть этот текст:

Цитата(Гульмира @  3.3.2011,  11:32 Найти цитируемый пост)
Изменила свойство DBGRIDEH --> properties --> DrawMemoText --> true и текст начал отображатся , но без форматирования, т.е. вместо переноса строк стоит символ ║и текст выводится в одну длину.

Wordwrap=true не помогает.


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)