Меня по работе несколько раз просили заменить стандартный TDateTimePicker на RxLib-овский, потому в стандартном якобы неудобно менять год. Как оказалось, просившие не знали об одном свойстве стандартного календаря.
Знаете ли вы, что если кликнуть по заголовку календаря, там где год и месяц, то календарь позволит выбрать месяц. А если кликнуть ещё раз, то можно будет выбрать год из текущего десятилетия. А если ещё раз, то можно будет выбрать десятилетие, при этом стрелки сверху будут менять столетия. Проверял в Windows XP и Vista.
То же самое будет если нажать Ctrl + стрелка вверх/вниз.
А ещё, TDateTimePicker не позволяет выбрать дату до 14 сентября 1752 года. А вот компонент TjvDateEdit из бесплатной библиотеки JVCL такого ограничения не имеет.
ну дату до 14 сентября 1752 года врядли потребуется использовать (если только программа не для историков и не про историю), а про десятилетия в календаре не знал :)
ОтветитьУдалитьДа да да) Буквально на прошлой неделе случайно в 7ке нажал и обнаружил такую функцию. Очень удивился) Неужели и в XP работает?)
ОтветитьУдалитьПошел проверять)
Нет, все же неудобно. Проверял на RAD Studio 2007. В XP старый TDateTimePicker.
ОтветитьУдалитьК сожалению, не получается вставить скрин, только ссылка:
http://i070.radikal.ru/1002/77/7d51b6901ec3.gif
CraZy_MaTH, TDateTimePicker, насколько я знаю, использует стандартный Виндовый календарь. Поэтому, его поведение не зависит от версии Delphi - всё контролирует винда.
ОтветитьУдалитьТолько что проверил на WinXP SP2 - получил такой же результат как у тебя. До этого проверял на рабочем компе с XP SP3 - там поведение было такое же как и в Vista.
У меня тоже SP3 однако результат как у CraZy_MaTH.
ОтветитьУдалитьНа скриншоте видна и версия windows и поведение календаря
http://i035.radikal.ru/1002/d9/c40290d6c5f0.jpg
DimaBy, спасибо за уточнение. Если не затруднит, попробуйте подключить к программе манифест XP.
ОтветитьУдалитьНе помогло. Пробовал на двух компонентах TMonthCalendar и TJVMontCalendar. По стилю кнопок видите, что манифест применился.
ОтветитьУдалитьhttp://i003.radikal.ru/1002/3a/beb8c86641d9.png
http://s003.radikal.ru/i204/1002/04/18506247dbeb.png
А вот скриншот второй программы запущенной по вистой
http://s60.radikal.ru/i169/1002/00/c2c8f5ea9592.png
DimaBy, спасибо за проверку. Видимо я что-то перепутал.
ОтветитьУдалитьА если запустить на XP сборку сделанную в RAD 2010 тоже покажется стандартный календарь для XP? =) Для чистоты эксперимента)
ОтветитьУдалитьCraZy_MaTH
ОтветитьУдалитьКак и следовало ожидать результат тот-же - старый календарь XP.
Про десятилетие очень интересно, не знал :)
ОтветитьУдалить