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

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

Формат даты для "разных стран" [D7, WinXP]


DimonNew ©   (2005-12-08 11:40:00) 

Привет, подскажите пожалуста, можно ли средставми Дельфи вывести формат даты, чтобы например, если формат вида "mmmm,dd,yy" название месяца можно было выводить либо на русском языке, либо на английском. На русском то выводит, а вот как на английском или немецком?


DimonNew   (2005-12-08 14:05:00) [1]

Большое спасибо MU ©


MU   (2005-12-08 13:01:00) [2]

uses Windows, ...
function LocaleDate(const DT : TDateTime; const LocaleID : LCID; const sFormat : String = 'd MMMM yyyy') : string;
var
 TempSysTime: TSystemTime;
 FineDate: array[0..100] of Char;
begin
 DateTimeToSystemTime(DT,TempSysTime); // ïðèâîäèì ê ñèñòåìíîìó âèäó
 GetDateFormat(LocaleID,// locale for which date is to be formatted
              DATE_USE_ALT_CALENDAR, // flags specifying function options
              @TempSysTime, // date to be formatted
              PChar(sFormat), // date format string
              @FineDate, // buffer for storing formatted string
              100 // size of buffer
 );
 Result :=  FineDate; //
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 LangID : Word;
 LocaleID : Cardinal;
begin
 LangID :=   (SUBLANG_GERMAN shl 10) or LANG_GERMAN;
 LocaleID := (SORT_DEFAULT shl 16) or LangID;
 ShowMessage(LocaleDate(Now, LocaleID, 'MMMM dd yyyy'));
 ShowMessage(LocaleDate(Now, LOCALE_SYSTEM_DEFAULT, 'MMMM dd yyyy'));
end;


Плохиш   (2005-12-08 12:30:00) [3]

Поставь в "настройках страны" "Стандарты и форматы" немецкий(Германия)


DimonNew   (2005-12-08 12:16:00) [4]

Это верно, не спорю, но я формирую документ в русской системе для немца.


Плохиш   (2005-12-08 12:00:00) [5]

Дата будет выведена на языке установленном в системе.


DimonNew   (2005-12-08 11:52:00) [6]

вот я и спрашивая, как, а не зачем?


Плохиш   (2005-12-08 11:44:00) [7]

Хм, зачем для немца выводить дату по-русски?


Наверх

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