whats new ¦  programming tips ¦  indy articles ¦  intraweb articles ¦  informations ¦  links ¦  interviews
 misc ¦  tutorials ¦  Add&Win Game

Tips (1541)

Database (90)
Files (137)
Forms (107)
Graphic (114)
IDE (21)
Indy (5)
Internet / LAN (130)
IntraWeb (0)
Math (76)
Misc (126)
Multimedia (45)
Objects/
ActiveX (51)

OpenTools API (3)
Printing (35)
Strings (83)
System (266)
VCL (242)

Top15

Tips sort by
component


Search Tip

Add new Tip

Add&Win Game

Advertising

103 Visitors Online


 
...return Messages in PC native language?
Autor: Walter Verhoeven
[ Print tip ]  

Tip Rating (3):  
     


{
  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;


 

Rate this tip:

poor
very good


Copyright © by SwissDelphiCenter.ch
All trademarks are the sole property of their respective owners