|
|
#1
|
|||
|
|||
DBGrid
при выводе значения поля типа (Text) в DBGrid пишется "(WIDEMEMO)" вместо значения поля как мне вывести текст что там написан ?
|
#2
|
||||
|
||||
попробуй в OnGetText : Text := Sender.AsString
|
#3
|
||||
|
||||
Не слушайте предыдущего оратора
Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#4
|
||||
|
||||
Цитата:
|
#5
|
|||
|
|||
Вот что я замутил....
Код:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin begin if Assigned(Column) then begin DBGrid1.Canvas.FillRect(Rect); DBGrid1.Canvas.TextRect(Rect, Rect.Left, Rect.Top, ' '+Column.Field.AsString); end; end; помогло.....НО....не вовсех случаях....в моеём...меня это спосло... Правда...эта процедура..подействовала..только на 3 BDGrid-а..из 5...не могу понять почиму.... а так ..Тему МОЖНО ЗАКРЫТЬ..... СПАСИБО ВСЕМ... Последний раз редактировалось Admin, 03.02.2011 в 20:22. |
#6
|
|||
|
|||
Если тебе надо вывести именно в DBGrid, то сделай ручную отрисовку этого поля (просто вырезвть нужный кусок текста, который поместится в ячейку (первую строку?) и вывести ее в гриде).
А вообще, данные поля обычно отображаются с помощью доп. компонента (TDBMemo). "Кидаешь" такой компонент на форму, связываешь с источником данных и при переходе между записями туда грузится собержимое таких полей. |
#7
|
|||
|
|||
Цитата:
|
#8
|
|||
|
|||
Можно добавить к датасету вычисляемое поле строкового типа, в DoOnCalcFields присваивать ему значение первого поля, а в DBGrid отображать вычисляемое.
|