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

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

Как использовать DisplayFormat ? [D6]


karbo ©   (2002-10-13 10:38:00) 

Хочу изменить формат данных в каком-то из полей TDBgrid. Говорят, для этого есть свойство DisplayFormat. Вопрос - куда это свойство присобачить?
Логично было бы dbgrid1.Fields[0].DisplayFormat:="000.000",
но у TField нет такого property! Излазил весь TDBgrid, не нашел ничего. Как сделать ??!?


MsGuns   (2002-10-15 22:36:00) [1]

> Anatoly Podgoretsky © (13.10.02 13:39)
>Tornado © (13.10.02 13:23)
>У TTable нет таких свойств, это надо писать или в персистентные поля или через FieldDefs

У TTable нет, а вот у TDataSet.TField есть. Не надо для этой цели пользоваться FieldDef[i]. Они служат совсем для другого


Karbo   (2002-10-15 20:03:00) [2]

Я хотел сказать, спасибо mike-d. Ну и >Tornadoтоже.


Karbo   (2002-10-15 19:52:00) [3]

>Tornado
Спасибо за
(DBGrid1.DataSource.DataSet.Fields[1] as TNumericField).DisplayFormat := "0";


Tornado   (2002-10-14 07:56:00) [4]

> Anatoly Podgoretsky © (13.10.02 13:39)
Tornado © (13.10.02 13:23)
У TTable нет таких свойств, это надо писать или в персистентные поля или через FieldDefs


Согласен, ошибся


Anatoly Podgoretsky   (2002-10-13 18:28:00) [5]

Karbo © (13.10.02 14:37)
А пример тяжело посмотреть?
Правда мне следовало точнее сказать - FieldDefs -> Items

Table1.FieldDefs.Items[0].DisplayName :=


mike-d   (2002-10-13 18:15:00) [6]

На TTable щелкаешь правой кнопкой мыши. Выбираешь "Fields Editor". В нем (FE) правой кнопкой и выбираешь "Add all fields" (по памяти пишу, может где неточность). В появившемся списке полей находишь и выбираешь нужное тебе поле (поля). У него точно есть "Display format". Далее как написал Tornado...
А если хочешь докопаться до него как
"DBgrid1.DataSource.DataSet.FieldDefs.DataSet.FieldDefList.DataSet.Fields[47].DataSet...."

то наверное правильней будет так
(DBGrid1.DataSource.DataSet.Fields[1] as TNumericField).DisplayFormat := "0";


Karbo   (2002-10-13 14:37:00) [7]

Ну нету у TTable.FieldDefs свойства DisplayFormat!


Anatoly Podgoretsky   (2002-10-13 14:25:00) [8]

Не знаю где ты проехал, а свойство FieldDefs есть у TTable, там же есть пример именно установки DisplayFormat


Karbo   (2002-10-13 14:08:00) [9]

DBgrid1.DataSource.DataSet.FieldDefs.DataSet.FieldDefList.DataSet.Fields[47].DataSet....

Где я здесь мимо DisplayFormatпроехал? Или даже близко не проезжал? И где водятся персистентные поля ?


Anatoly Podgoretsky   (2002-10-13 13:39:00) [10]

Tornado © (13.10.02 13:23)
У TTable нет таких свойств, это надо писать или в персистентные поля или через FieldDefs


Tornado   (2002-10-13 13:23:00) [11]

Вот так примерно: ### ##0.000 - отображает число с 3-мя знаками после запятой. Это нужно записать в свойство DisplayFormat компонента TTable. Удачи


Наверх

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