![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Работа с полем типа Date и соотв. визуальными компонентами [D5]
kalliopiy © (2002-07-17 17:40:00)Здравтствуйте!
Подскажите у кого какие есть идеи по поводу использования в программе TDateTimePicker (Каледарь в простонародье) в качестве визуального компонента для редактирования значений полей типа Date. Эта штучка, безусловно, очень удобна и симпатична, но есть одна проблема - она не позволяет оставить значение даты ПУСТЫМ, т.е. незаданным. А нужно сделать так, чтобы в БД эта самая дата записывалась по желанию (ну и соответственно отображалась только если там что-то записано).
Пока что применяю TDateTimePicker со свойством ShowCheckBox (так кажется), т.е. если установлен флажок - пишем в таблицу выбранную дату, если нет - пишем NULL. Однако, выглядит на экране это не слишком красиво: флажок снят, в таблице NULL, а пользователь все равно дату видит (пусть даже она и затененная).
Если кто-то что-то понял и может помочь - буду очень признателен!
ЮЮ (2002-07-19 08:43:00) [1]>Proton
>(что бы изменить дату на 20 лет нужно 20 раз нажать кнопку, или >вписать вручную)
а TDateTimePicker узнает по глазам пользователя, что надо изменить дату на 20 лет и тому достаточно нажать на кнопку 1 раз :-)
Proton (2002-07-18 22:45:00) [2]ты конечно поступил как истенный програмст
выкрутился, я вот в свое время просто кинул компонент из RxLib и все,
хотя он значиельно хуже DTP. (что бы изменить дату на 20 лет нужно 20 раз нажать кнопку, или вписать вручную)
посоветовать могу лишь одно - либо менять свойство Visible у DTP
DatatimePicker.visible := Cheackbox.Checked
или
DatatimePicker.visible := varIsNull(table1["BirthDay"])
либо использовать DataAware коппонент из EhLib - это то же самый DTP
но имеющий свойсnва Dataset и DataField - идеальное решение поставленной
задачи.
Val (2002-07-17 19:11:00) [3]вот не знаю, где они теперь. а вообще есть такая штука как поисковые сервера :)
kalliopiy (2002-07-17 19:03:00) [4]OK!
Тогда дай еще и ссылочку на нее - RX-lib.
Знаешь, у нас тут осталось буквально сто метров до асфальта :) - еще всего-лишь чуточку. Это на счет всемирной известности. Подскажи уж мне, лодарю эдакому, который пользуется, как это видно, только стандартными компонентами.
Val (2002-07-17 18:48:00) [5]А о чем рассказывать-то? всемирно-известная библиотека компонентов RX-lib с полезными исходничками :) В ней есть компонент DBDateEdit, который, как видно из названия, является DBAware, то есть, откладываете проблемы с Picker"ом в сторону :)
kalliopiy (2002-07-17 18:31:00) [6]> Val
Расскажи-ка поподробнее.
Пожалуйста.
Val (2002-07-17 18:19:00) [7]нехороший компонент для работы с бд :(
я использую такой-DBAware из RX"а.