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

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

Отображаение Булевых полей в гриде! [D5, IB6.x]


HolyMan ©   (2004-01-18 23:16:00) 

Уважаемые мастера! Столкнулсяс такой проблемой как отображаение булевых полей в гриде...то есть: допустим есть булевое поле в таблице(Оплачено - Не оплачено), как его отобразить в Гриде, для начла я хочу чтобы писалось в гриде оплачен\ не оплачено, если с этим разберусь дальше уже буду ставить чеки и все такое.
Просто как то раньше такое не встречалось и хотелось бы разобраться с этой технологией.
Большое спасибо за совет.


Yumata   (2004-01-20 09:40:00) [1]

Ставишь InfoPower, в его DBGrid"e сразу можно поставить Edit Control=CheckBox. И все!
Вообще InfoPower - супер! Особенно DataInspector!


Sergey_Masloff   (2004-01-20 06:44:00) [2]

VID © (19.01.04 20:15) [5]
>в ehlib.TDBGridEh ваще в лог. поле галочка ставиться... >культурно...
галочка руками делается за 2 минуты в обычном гриде - и не надо тучу кода и глюков эхлиба за собой таскать ;-)


Dred2k   (2004-01-19 21:10:00) [3]

> культурно...

Лучше только Quantum.
(сам юзаю Eh) ;)


VID   (2004-01-19 20:15:00) [4]

в ehlib.TDBGridEh ваще в лог. поле галочка ставиться... культурно...


stone   (2004-01-19 09:59:00) [5]


> допустим есть булевое поле в таблице(Оплачено - Не оплачено),
> как его отобразить в Гриде


см. хэлп

property DisplayValues: string;

Description

Use DisplayValues to specify strings the field uses to represent Boolean values. Use any pair of phrases, separated by a semicolon. For example, to have the true and false values correspond to the letters T and F, respectively, set DisplayValues as follows:

Delphi syntax:

On Windows:

Table1LogicalField.DisplayValues := "T;F";


Кщд   (2004-01-19 06:15:00) [6]

kaif © (19.01.04 03:52) [2]
то же самое с точностью до наоборот :)
а в эхлиб - просто песня


kaif   (2004-01-19 03:52:00) [7]

2 vid © (19.01.04 00:26) [1]
Хорошо бы еще и с редактированием разобраться...


vid   (2004-01-19 00:26:00) [8]

Выделяешь датасет, в котором хранятся данные которые отображает этот грид. Два раза щёлкаешь по этому датасету (вызываешь Fields Editor), находишь то поле, в котором у тебя храниться логическое значение ОПЛАЧЕНО/НЕ ОПЛАЧЕНО. Поле по идее должно быть Boolean (в FIBPlus если ты всё сделал правильно с именем домена), либо Integer...

короче на событие onGetText этого поля пишешь такой код

//Когда поле - Boolean
IF Sender.AsBoolean then True: Text := "Оплачено"
else Text := "Нифига...";

//Если поле - Integer;
Case Sender.AsInteger of
1: Text := "Оплачено";
0: Text := "Фиг...";
end;


Наверх

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