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

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

Редактирование времени в DBGrid [D7, MSSQL]


Страницы:   1 2

Katya ©   (2006-10-26 22:02:00) 

Здравствуйте! Подскажите, как решить следующую проблему: в DBGrid имеется поле для ввода времени в формате 00:00. При этом для соответствующего поля в DataSet-е задана маска ввода. Пытаюсь изменить значение в ячейке, она переходит в состояние редактирования, но при этом обнуляет минуты, а часы остаются без изменений, т.е. если было значение '08:30', то при редактировании отобразится '08:00'. Самое печальное: для исходного значения '00:00' отображается '99:__'. Может это как-то связано с маской ввода? Кто-нибудь знает, как это исправить? Заранее огромное спасибо.


Ketmar   (2006-10-29 02:17:00) [21]

>[8] Германн(c) 29-Oct-2006, 02:15
>И это совет для "новичков"?
а мы, между прочим, в "базах". %-)


Германн   (2006-10-29 02:15:00) [22]


> нарисуйте свою панельку с двумя или тремя эдитами (час,
> мин, сек), которую при попадании фокуса в нужную колонку
> грида рисуйте прямо поверх ячейки, подгоняя геометрию.

И это совет для "новичков"?


Johnmen   (2006-10-29 02:02:00) [23]


> MsGuns ©   (29.10.06 01:37) [6]
> Жэка, иди ты..
> ;))


Не уйду! Не позволю развращать новичков! :)))


MsGuns   (2006-10-29 01:37:00) [24]

>Johnmen ©   (29.10.06 00:17) [5]
>Опять за старое. Хоть бы ИМХО добавил........

Жэка, иди ты..
;))


Johnmen   (2006-10-29 00:17:00) [25]


> MsGuns ©   (28.10.06 22:50) [4]
> ....такой интерфейс просто крайне неудобен для пользователя.


Опять за старое. Хоть бы ИМХО добавил........


MsGuns   (2006-10-28 22:50:00) [26]

Катюша, Вы избрали далеко не самый лучший способ ввода даты, давая править непосредственно в гриде, да еще и с помощью маски - такой интерфейс просто крайне неудобен для пользователя.
Воспользуйтесь имеющимися компонентами или нарисуйте свою панельку с двумя или тремя эдитами (час, мин, сек), которую при попадании фокуса в нужную колонку грида рисуйте прямо поверх ячейки, подгоняя геометрию.
Правильно введенное время просто программно присваивайте полю записи.


Katya   (2006-10-28 21:56:00) [27]

Поле DateTime, маска '!90:00;1;_' (стандартная маска ShortTime).
Может это и выход - использовать обычные компоненты, но требование пользователя: отсутствие кнопок типа "Записать", "Обновить" и т.п.; к тому же требуется отображение большого кол-ва данных, т.е. без грида не обойтись.


Sergey13   (2006-10-27 09:13:00) [28]

> [0] Katya   (26.10.06 22:02)

Какого типа поле, какая маска?

> [1] Shirson ©   (27.10.06 08:46)
> Писать придётся больше, но работает не в пример надёжнее и меньше изматывает пользователя.
И пользователя изматывает (тут конечно много нюансов, но по моему опыту изматывает) и сервер.


Shirson   (2006-10-27 08:46:00) [29]

Из собственного опыта - никаких редактирований в гриде или прочих компонентах с "прямым" доступом в базу.
Только через обычные компоненты и "фиксировать" средствами update. Писать придётся больше, но работает не в пример надёжнее и меньше изматывает пользователя.


Страницы:   1 2

Наверх

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