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

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

Установить формат даты и времени [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]

Надо использовать, преднозначенные для этого глобальные переменные, это первый вариант...


Наверх

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