Возвращать сообщения на родном языке компьютера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 прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |