Форум: "Начинающим";
Текущий архив: 2013.05.19;
Скачать: [xml.tar.bz2];
ВнизShortDateFormat переменная Найти похожие ветки
← →
гия (2012-10-08 15:01) [0]Здравствуйте
Может быть мой вопрос не совсем по теме. Если так то поправьте пожалуйста.
Пишу программу в Дельфи ХЕ под Windows XP. Програма работает в сети.
В обработчике OnCreate главной формы первыми командами написаны:
ShortDateFormat:= "dd-MM-yyyy";
DateSeparator:= "-";
У пользователей в разных компьютерах формат даты для Windows установлен по разному и многие пользователи отказываются менять его, говоря что другие программы (в основном Excel) подстроены под другой формат.
Однако в некоторых компьютерах программа дату выводит в тот формат, какой написан в программе, независимо от того какой формат стоит для Windows. А вот в некоторых упорно выводит в Windows формате, игнорируя значение ShortDateFormat:= "dd-MM-yyyy";
← →
Плохиш © (2012-10-08 15:15) [1]Application.UpdateFormatSettings=false;
← →
гия (2012-10-08 15:38) [2]Уточните пожалуйста
после
ShortDateFormat:= "dd-MM-yyyy";
DateSeparator:= "-";
должен написать
Application.UpdateFormatSettings=false;?
← →
Dmitriy (2012-10-09 17:53) [3]
> в некоторых упорно выводит в Windows формате, игнорируя
> значение ShortDateFormat:= "dd-MM-yyyy";
Используй функцию FormatDateTime и будет тебе щасте
Типа
Label1.Caption := FormatDateTime("dd-MM-yyyy h "hours" n "min" s "sec" ", Now);
← →
DVM © (2012-10-10 00:04) [4]
> В обработчике OnCreate главной формы первыми командами написаны:
>
> ShortDateFormat:= "dd-MM-yyyy";
> DateSeparator:= "-";
Так лучше не делать, т.к. 1) - не потокобезопасно 2) - может найтись еще один такой же умный компонент или модуль который поменяет еще раз и привет.
Лучше использовать локально нужный формат или форматировать самому.
← →
Германн © (2012-10-10 01:54) [5]
> форматировать самому.
>
+1
← →
Плохиш © (2012-10-10 02:19) [6]Все подобные поделки летят в корзину, ибо программа должна показывать дату, время, валюту в том виде, в каком я хочу их видеть. 21 век уже на дворе.
← →
Андреевич (2012-10-28 18:58) [7]Все подобные ораторы должны быть уволены и отправлены на плантации дабы не повышать энтропию. Ну и чтобы не чувствовали себя телепатами, это лечится электрошоком.
Потом может дойдет, что кроме как "показать" есть еще другая работа, например парсинг входных данных из внешнего источника, который диктует необходимый формат.
← →
Андреевич (2012-10-28 18:58) [8]хотя зачем на плантации, в биоректор сразу - 21 век на дворе.
ЗЫ не сильно грубо?
← →
DVM © (2012-10-28 22:59) [9]
> Андреевич (28.10.12 18:58) [7]
> например парсинг входных данных из внешнего источника,
> который диктует необходимый формат.
Речь не о том, зачем это делается, речь о том как. Запомни раз и навсегда, нельзя менять значения ShortDateFormat:= "dd-MM-yyyy" и DateSeparator:= "-", т.к. данные переменные глобальные (в последних делфи получим предупреждение насчет этого) и неизвестно к каким последствиям это приведет. Для тех кто желает сильно использовать ShortDateFormat и т.д. отличные от системных, есть перегруженные варианты функций, принимающие одним из аргументов именно твой формат. Берешь системный, копируешь себе, меняешь в своей переменной формат и используешь ЛОКАЛЬНО как я и написал выше.
← →
antonn © (2012-10-28 23:20) [10]
> Берешь системный, копируешь себе, меняешь в своей переменной
> формат и используешь ЛОКАЛЬНО как я и написал выше.
>
я то беру, а сторонний dcu? :)
← →
Германн © (2012-10-29 01:37) [11]
> кроме как "показать" есть еще другая работа, например парсинг
> входных данных из внешнего источника, который диктует необходимый
> формат.
А на компьютере при этом может одновременно работать более одной программы, которые пытаются установить свои настройки форматов таким вот брутальным способом. :)
Про пользователя я уже молчу. (((
← →
Германн © (2012-10-29 02:02) [12]Кстати для парсинга стоит самому написать функцию типа StrToDateTimeFormat.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2013.05.19;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.002 c