Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.23;
Скачать: CL | DM;

Вниз

Как в TDBGridEh в колонку вставить CkeckBox???   Найти похожие ветки 

 
Sanich ©   (2005-01-04 18:41) [0]

Помогите пожалуйста!
У меня програма на Delphi6.
Использую обычную базу данных FOX.
Для свуязи с таблицей использую компоненты Tdbf и TDataSource.
В TDbGridEh в  свойстве Columns добавил поля, которые мне необходимы при работе с таблицей. Одно из полей имеет тип Numeric(1,0). Мне необходимо, что-бы оно в програме имело вид CheckBox-а, тоесть отмечено - равно 1, не отмечено - равно 0.
Я в свойстве этого поля CheckBoxes ставлю True.
Появляется CheckBox-ы, но они не активны.
Что я сделал не так. Подскажите, пожалуйста.


 
Asinus   (2005-01-04 18:56) [1]

Это из справки:

Checkboxes automativcaly true for boolean field. To show checkboxes for non boolean fields fill first line of KeyList that corresponds to the checked state of the checkbox, second line -  non checked state, and set Checkboxes to True. Line of KeyList can represent more than one value in a semicolon-delimited list of items.

DBGridEh1.Columns[1].KeyList.Strings[0] := "True;Yes;On";

DBGridEh1.Columns[1].KeyList.Strings[1] := "False;No;Off";

For boolean field not need to fill keyList.

EhLib Software


 
Sanich ©   (2005-01-04 19:05) [2]

Спасибо большое - помогло.
Но при запуске программы поле, в котором небыло изначально установлено значение - отмечено или нет является как бы неактывным, тоесть как я понимаю имеет неопределенное значние.
Причем строки в таблицу добавляет независимая программа, которую я не могу поменять.
Что вы посоветуете?


 
Sanich ©   (2005-01-05 08:57) [3]

Так что же делать? Помогите!


 
KSergey ©   (2005-01-05 10:27) [4]

Исходники смотреть лень (мне, вам - не знаю) - но в DBF есть интересная "фишка": не заполненные записи содержат "пробелы" в поля. В том числе и цифровых. Попробуйте прести пробел в список возможных ложных значений.

Не поможет - исхдники EhLib не скрыты, можно там посмотреть что и как


 
Sanich ©   (2005-01-05 11:12) [5]

Я пошел по другому пути.
Хотя он может и корявый, но практичный.(главное время не терял)
При запуске моей программы выполняеться запрос
и все поля, которые имеют значение null меняю на 0.
Так как все сделано таким образом, что во время
доступа моей программы к БД никто данные не может поменять колизий не должно быть, а теряеться не так уж много машинного времени.
Всем спасибо за участие и внимание :)



Страницы: 1 вся ветка

Текущий архив: 2005.01.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.049 c
1-1105458340
Gear
2005-01-11 18:45
2005.01.23
А как сделать в процессе выполнения программы не главное окно ...


4-1101744745
vic_774N
2004-11-29 19:12
2005.01.23
странное поведение LoadLibrary ...


8-1097613042
AKA
2004-10-13 00:30
2005.01.23
BMP to ICO


14-1104427648
@BraIN
2004-12-30 20:27
2005.01.23
Проблема со зрением


14-1104676368
Cobalt
2005-01-02 17:32
2005.01.23
Большие диски - большие потери.