![]() |
![]() ![]() ![]() ![]() |
|
Возвращать сообщения на родном языке компьютераDelphi , ОС и Железо , ЯзыкВозвращать сообщения на родном языке компьютера
Оформил: DeeCo
{
Call inLanguage like this to get the German text else return english
if you use different coutntry codes you can do more
}
{############### FGetLanguageSettings ############################
# Author: Walter Verhoeven
# Date: 14.Sep.2000
# Coming From: InLanguage
# Next Event: NONE
# Parameters: NONE
# Objective: See the users regional settings and return Country #number code
# Change:
# DD-MMM-YYYYY ¦Programmer
# 1)
#
########################################################}
function FGetLanguageSettings: Integer;
var
OutputBuffer: PChar;
SelectedLCID: LCID; //DWORD constand in Windows.pas
begin
OutputBuffer := StrAlloc(4); //alocate memory for the PChar
try
try
SelectedLCID := GetUserDefaultLCID;
GetLocaleInfo(SelectedLCID, LOCALE_ICOUNTRY, OutputBuffer, 3);
Result := StrToInt(OutputBuffer);
except
Result := 49; //german
Abort;
end;
finally
StrDispose(OutputBuffer); //alway's free the memory alocated
end;
end;
{############## INLanguage #######################################
# Author: Walter Verhoeven
# Date: .Jun.2000
# Coming From:
# Next Event: FGetLanguageSettings
# Parameters: Eglish and german text
# Objective: provide a method to return
# english or german results based on the
# users window prefered language setting.
# Change:
# DD-MMM-YYYYY ¦Programmer
# 1)
#
##############################################################}
function INLanguage(English, German: string): string;
begin
case FGetLanguageSettings of
49: Result := German; // Return the german string
43: Result := German; // If the PC has a german preferance
41: Result := German;
352: Result := German;
else
Result := English; // if not german then english
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(Format(INLanguage('My %s English Word',
'Riesiges %s Software-Angebot'), ['Hopla']));
end;
Программа, предназначенная для возвращения сообщений на языке пользователя, который определяется с помощью функции FGetLanguageSettings
Функция возвращает целое число, представляющее собой предпочтительный язык пользователя. Она использует функцию INLanguage
Функция принимает два параметра: текст на английском и немецком языках. Она использует оператор switch для определения, какой язык вернуть, основываясь на результате Button1Click
Событийный обработчик вызывает функцию Обратите внимание, что это код assumes, что программа Delphi запущена на системе Windows, так как она использует API-функции Windows, такие как В статье описывается функция INLanguage, которая возвращает текст на родном языке компьютера, а также способ реализации этой функции с использованием функции FGetLanguageSettings. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||