Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];

Вниз

установить: разделитель разрядов, дробной части, даты и т.д.   Найти похожие ветки 

 
Алексей Петухов   (2004-06-18 19:26) [0]

Здравствуйте, уважаемые мастера.

Подскажите пожалуйста, как мне вне зависимости от региональных настроек в Windows, установить:
 разделитель разрядов = нет
 разделитель дробной части = ,
 разделитель даты = .
 колличество дробных знаков = 2
И сделать эти изменения фиксированными на время работы программы?
А то если я указываю  
 ThousandSeparator:=#0;
и во время работы программы меняю его в региональных настройках, то он и программе меняется.

Заранее благодарю за помощь.


 
Vit@ly ©   (2004-06-18 20:39) [1]

var ThousandSeparator: Char;
var DecimalSeparator: Char;
var CurrencyDecimals: Byte;
var DateSeparator: Char;
var ShortDateFormat: string;
var LongDateFormat: string;
var TimeSeparator: Char;
и т.д.


 
Алексей Петухов   (2004-06-18 20:52) [2]


> Vit@ly ©   (18.06.04 20:39) [1]
> var ThousandSeparator: Char;

Что-то сомневаюсь я что это может как-то помочь ....


 
Vit@ly ©   (2004-06-18 21:03) [3]

А в чем сомнения?
Читаешь установленные разделители на момент запуска проги, запоминаешь, устанавливаешь нужные, а при завершении программы, восстанавливаешь в эти переменные - те что запомнил.
Возможно с Var я переборщил.
Delphi и без нас распознает распознает их
Могу проверить, чотя и лень


 
Vit@ly ©   (2004-06-18 21:10) [4]

Проверил
Var ssep: Char;//глобально в проекте
procedure TForm1.Button1Click(Sender: TObject);
begin
ssep:= ThousandSeparator;
ThousandSeparator:= ":";
...........
...............

ThousandSeparator:= ssep;
end;


 
evvcom ©   (2004-06-20 19:39) [5]


> Подскажите пожалуйста, как мне вне зависимости от региональных
> настроек в Windows, установить:

А цель сего какова? В зависимости от цели есть разные пути решения.


 
Алексей Петухов   (2004-06-21 16:25) [6]


> А цель сего какова? В зависимости от цели есть разные пути
> решения

Цель такая: например, что-бы в DBGrid-ах числа без разделителей разрядов отображались (и обрабатывались) в не зависимости от региональных настроек и драйверов баз данных.


 
Петров Денис ©   (2004-06-21 17:03) [7]

> Алексей Петухов   (21.06.04 16:25) [6]

Ну и установи формат вывода только для грида, например, так:


(Query1.FieldByName("price") as TNumericField).DisplayFormat := "0.00";


 
Алексей Петухов   (2004-06-22 18:45) [8]

мне нужно сделать это для всех гридов, лабелей, едитов и множества других DB-компонент, в том числе и для самописных.
Для каждого, согласитесь, делать это немного утомительно.
Так-что мне нужно "ВСЕ И СРАЗУ" :-).

Вариант с переопределением значений типа ThousandSeparator - самое оно, но при использовании в ODBC драйвере MS SQL параметра Использовать региональную настройку=yes, при изменениях в региональных настройках, во время работы программы меняются и вид этих гридов, несмотря на мои переопределения, как это побороть?
Вопрос в этом.


 
evvcom ©   (2004-06-22 20:35) [9]

Вот чем больше будет таких программ, меняющих глобальные настройки, тем глючнее будут работать программы на этом компьютере. Выбрасывать такие программы надо! Не раздумывая, а по сему и самому не писать такого.



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

Форум: "WinAPI";
Текущий архив: 2004.08.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.038 c
14-1090138023
AndrewVolkov
2004-07-18 12:07
2004.08.01
DownTimes - корректный перевод


3-1089182014
Rusty
2004-07-07 10:33
2004.08.01
Как определить: существует ли таблица в базе Access?


4-1087458441
WwW
2004-06-17 11:47
2004.08.01
Мастера есть функция котораея определяет Handle активного окна


14-1089467429
Marser
2004-07-10 17:50
2004.08.01
Украинскому футболу 110 лет!


3-1089271451
Алексей
2004-07-08 11:24
2004.08.01
JET: строка подключения к БД Fox и dBase





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский