![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Установить формат даты и времени [D7, XP]
Alex_C © (2008-09-12 13:49:00)Как в программе установить отображаемый формат даты и времени, отличный от того, что установлен в системе?
{RASkov} (2008-09-14 12:24:00) [1]> [18] Alex_C (13.09.08 23:30)
Тут многое зависит от конечной задачи и еще от чего-то :)
С твоих слов, в ОС один пользователь, а в твоей программе более одного и есть с разными вкусами к отображению/вводу данных.
То тут возможно при входе пользователя в программу, действительно сменить глобально для всего приложения(а не для системы) такие параметры, как например DecimalSeparator или что-то с датой.... Имхо конечно.... да и более того, сам так никогда не делал, но по причине - небыло необходимости..
Alex_C (2008-09-13 23:30:00) [2]Ок! Спасибо за советы! Как я понял, так и прийдется в каждом месте программы использовать FormatDateTime.
Германн (2008-09-13 15:55:00) [3]
> Надо любить своего пользователя :)
Ну и люби, кто мешает. Лень делать ручками FormatDateTime в каждом месте программы? Тогда это не любовь.
Anatoly Podgoretsky (2008-09-13 14:04:00) [4]Для этого не надо менять региональные установки, достаточно форматировать конкретный вывод в соответствии с региональными установками. FormatDateTime
Alex_C (2008-09-13 11:06:00) [5]То Anatoly Podgoretsky : Вы же мужчина взрослый и должны понимать, что ситуации бывают разные, причем сильно. И случается так, что нужно , чтоб не региональные стандарты в винде изменять, а именно в программе была возможность выбора. Надо любить своего пользователя :) Вот у меня допустим пользователи хотят из формата времени убрать вывод секунд.
Правильный$Вася (2008-09-12 15:27:00) [6]
> TFormatSettings;
> - т.е. получение формата , а не установки.
F1 + see also
Правильный$Вася (2008-09-12 15:26:00) [7]
> у разных пользователей моей программы разные предпочтения
> по вопросу формата даты/времени. Вот хочу сделать возможность
> выбора.
панель управления - язык и региональные стандарты
каждый юзер может под себя настроить
Anatoly Podgoretsky (2008-09-12 15:21:00) [8]> Alex_C (12.09.2008 15:12:11) [11]
Спроси пользователя он тебе объяснит как работать с Виндоус.
Alex_C (2008-09-12 15:12:00) [9]Честно не понял, почему мне тут делать нечего и про какой выбор идет речь.
Поэтому вопрос остается.
Anatoly Podgoretsky (2008-09-12 15:10:00) [10]Вот поэтому тебе здесб делать нечего. Проблема выбора не стоит, он у него есть и очень гибкий.
Alex_C (2008-09-12 15:05:00) [11]Почему извращение? Просто у разных пользователей моей программы разные предпочтения по вопросу формата даты/времени. Вот хочу сделать возможность выбора.
Anatoly Podgoretsky (2008-09-12 14:56:00) [12]> Alex_C (12.09.2008 14:41:07) [7]
А зачем такое извращение или это только для себя, или ты так над пользователями издеваешься?
Alex_C (2008-09-12 14:41:00) [13]Толи я чего то не понимаю, толи меня не правильно поняли :)
На счет TFormatSettings - тут все понятно.
Но у меня вот какая проблема, и как ее решить с помощью TFormatSettings, я не знаю:
у меня есть работающая программа. На ней есть несколько таблиц TDBGrid, в которых есть колонки даты и времени. По умолчанию время отображается как 8:30:50. То, что для каждой таблицы я отдельно могу прописать формат времени - понятно. Но есть ли комманда, которая во время работы программы изменит формат даты и времени для всех компонентов?
{RASkov} (2008-09-12 14:19:00) [14]> [5] Alex_C (12.09.08 14:13)
Тебе нужны не локальная версия, а глобальные переменные....
Просто в TFormatSettings собрали все в кучу..... ты глянь это дело и достать из record'а все что нужно.... F1 тебе поможет...
Alex_C (2008-09-12 14:13:00) [15]То Правильный$Вася :
Ок! Спасибо! направление ясно.
Но тут еще вопросик тогда: в инете примеры есть только такие:
var
FormatSettings : TFormatSettings;
GetLocaleFormatSettings(LOCALE_SYSTEM_DEFAULT, FormatSettings);
- т.е. получение формата , а не установки.
Правильный$Вася (2008-09-12 14:05:00) [16]TFormatSettings type
Alex_C (2008-09-12 14:02:00) [17]Поясню немного свой вопрос:
у меня в программе во многих местах используются компоненты, отображающие дату и время. И в таблицах БД и просто компоненты отображающие дату и время. Есть ли возможность для них всех одной коммандой изменять их формат?
{RASkov} (2008-09-12 14:00:00) [18]> [0] Alex_C (12.09.08 13:49)
FormatDateTime, FormatXxxx, просто Format.....
Плохиш (2008-09-12 13:54:00) [19]Надо использовать, преднозначенные для этого глобальные переменные, это первый вариант...