Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.10.19;
Скачать: CL | DM;

Вниз

Установить формат даты и времени   Найти похожие ветки 

 
Alex_C   (2008-09-12 13:49) [0]

Как в программе установить отображаемый формат даты и времени, отличный от того, что установлен в системе?


 
Плохиш ©   (2008-09-12 13:54) [1]

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


 
{RASkov} ©   (2008-09-12 14:00) [2]

> [0] Alex_C   (12.09.08 13:49)

FormatDateTime, FormatXxxx, просто Format.....


 
Alex_C   (2008-09-12 14:02) [3]

Поясню немного свой вопрос:
у меня в программе во многих местах используются компоненты, отображающие дату и время. И в таблицах БД и просто компоненты отображающие дату и время. Есть ли возможность для них всех одной коммандой изменять их формат?


 
Правильный$Вася   (2008-09-12 14:05) [4]

TFormatSettings type


 
Alex_C   (2008-09-12 14:13) [5]

То Правильный$Вася :
Ок! Спасибо! направление ясно.
Но тут еще вопросик тогда: в инете примеры есть только такие:
var
 FormatSettings : TFormatSettings;

GetLocaleFormatSettings(LOCALE_SYSTEM_DEFAULT, FormatSettings);

- т.е. получение формата , а не установки.


 
{RASkov} ©   (2008-09-12 14:19) [6]

> [5] Alex_C   (12.09.08 14:13)

Тебе нужны не локальная версия, а глобальные переменные....
Просто в TFormatSettings собрали все в кучу..... ты глянь это дело и достать из record"а все что нужно.... F1 тебе поможет...


 
Alex_C   (2008-09-12 14:41) [7]

Толи я чего то не понимаю, толи меня не правильно поняли :)
На счет TFormatSettings - тут все понятно.
Но у меня вот какая проблема, и как ее решить с помощью TFormatSettings, я не знаю:
у меня есть работающая программа. На ней есть несколько таблиц TDBGrid, в которых есть колонки даты и времени. По умолчанию время отображается как 8:30:50. То, что для каждой таблицы я отдельно могу прописать формат времени - понятно. Но есть ли комманда, которая во время работы программы изменит формат даты и времени для всех компонентов?


 
Anatoly Podgoretsky ©   (2008-09-12 14:56) [8]

> Alex_C  (12.09.2008 14:41:07)  [7]

А зачем такое извращение или это только для себя, или ты так над пользователями издеваешься?


 
Alex_C   (2008-09-12 15:05) [9]

Почему извращение? Просто у разных пользователей моей программы разные предпочтения по вопросу формата даты/времени. Вот хочу сделать возможность выбора.


 
Anatoly Podgoretsky ©   (2008-09-12 15:10) [10]

Вот поэтому тебе здесб делать нечего. Проблема выбора не стоит, он у него есть и очень гибкий.


 
Alex_C   (2008-09-12 15:12) [11]

Честно не понял, почему мне тут делать нечего и про какой выбор идет речь.
Поэтому вопрос остается.


 
Anatoly Podgoretsky ©   (2008-09-12 15:21) [12]

> Alex_C  (12.09.2008 15:12:11)  [11]

Спроси пользователя он тебе объяснит как работать с Виндоус.


 
Правильный$Вася   (2008-09-12 15:26) [13]


> у разных пользователей моей программы разные предпочтения
> по вопросу формата даты/времени. Вот хочу сделать возможность
> выбора.

панель управления - язык и региональные стандарты
каждый юзер может под себя настроить


 
Правильный$Вася   (2008-09-12 15:27) [14]


> TFormatSettings;
> - т.е. получение формата , а не установки.

F1 + see also


 
Alex_C   (2008-09-13 11:06) [15]

То Anatoly Podgoretsky : Вы же мужчина взрослый и должны понимать, что ситуации бывают разные, причем сильно. И случается так, что нужно , чтоб не региональные стандарты в винде изменять, а именно в программе была возможность выбора. Надо любить своего пользователя :) Вот у меня допустим пользователи хотят из формата времени убрать вывод секунд.


 
Anatoly Podgoretsky ©   (2008-09-13 14:04) [16]

Для этого не надо менять региональные установки, достаточно форматировать конкретный вывод в соответствии с региональными установками. FormatDateTime


 
Германн ©   (2008-09-13 15:55) [17]


> Надо любить своего пользователя :)

Ну и люби, кто мешает. Лень делать ручками FormatDateTime в каждом месте программы? Тогда это не любовь.


 
Alex_C   (2008-09-13 23:30) [18]

Ок! Спасибо за советы! Как я понял, так и прийдется в каждом месте программы использовать FormatDateTime.


 
{RASkov} ©   (2008-09-14 12:24) [19]

> [18] Alex_C   (13.09.08 23:30)

Тут многое зависит от конечной задачи и еще от чего-то :)
С твоих слов, в ОС один пользователь, а в твоей программе более одного и есть с разными вкусами к отображению/вводу данных.
То тут возможно при входе пользователя в программу, действительно сменить глобально для всего приложения(а не для системы) такие параметры, как например DecimalSeparator или что-то с датой.... Имхо конечно.... да и более того, сам так никогда не делал, но по причине - небыло необходимости..



Страницы: 1 вся ветка

Текущий архив: 2008.10.19;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.03 c
2-1221132574
DMX
2008-09-11 15:29
2008.10.19
Уникальная строка


2-1220944122
K12
2008-09-09 11:08
2008.10.19
Запрос


2-1220876858
programmer90
2008-09-08 16:27
2008.10.19
как убрать у комбобокса убрать эту штуку справа


2-1221040601
novai
2008-09-10 13:56
2008.10.19
помогите с объектом!


1-1200679747
ilkz
2008-01-18 21:09
2008.10.19
Приложение и DLL