Einzelnen Beitrag anzeigen

mjohn

Registriert seit: 12. Mai 2007
3 Beiträge
 
Delphi 7 Personal
 
#38

AW: Lingus (Übersetzungswerkzeug)

  Alt 10. Okt 2010, 13:37
Hier ein "Minimalbeispiel" mit drei Sprachen:

Delphi-Quellcode:
unit Lingusdemo;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, LanguageObjects, LanguageIcons, StdCtrls, Menus, ImgList;
type
  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    speichern1: TMenuItem;
    laden1: TMenuItem;
    Einstellungen1: TMenuItem;
    Sprache1: TMenuItem;
    Deutsch1: TMenuItem;
    Englisch1: TMenuItem;
    Franzsisch1: TMenuItem;
    procedure FormCreate(Sender: TObject);
    procedure Englisch1Click(Sender: TObject);
    procedure Deutsch1Click(Sender: TObject);
    procedure Franzsisch1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
  Language.Translate(Self);
end;

procedure TForm1.Englisch1Click(Sender: TObject);
var
  i: Integer;
begin
  for i := 0 to LanguageList.Count - 1 do
  if LanguageList[i].Available then
  begin
    if LanguageList[i].ID = 'enthen
    begin
      Language.CurrentLanguage := LanguageList[i];
      Break;
    end;
  end;
Language.Translate(Self);
end;

procedure TForm1.Deutsch1Click(Sender: TObject);
var
  i: Integer;
begin
  for i := 0 to LanguageList.Count - 1 do
  if LanguageList[i].Available then
  begin
    if LanguageList[i].ID = 'dethen
    begin
      Language.CurrentLanguage := LanguageList[i];
      Break;
    end;
  end;
Language.Translate(Self);
end;

procedure TForm1.Franzsisch1Click(Sender: TObject);
var
  i: Integer;
begin
  for i := 0 to LanguageList.Count - 1 do
  if LanguageList[i].Available then
  begin
    if LanguageList[i].ID = 'frthen
    begin
      Language.CurrentLanguage := LanguageList[i];
      Break;
    end;
  end;
Language.Translate(Self);
end;
end.
Bei der Wahl von Englisch wird auch das Untermenü korrekt übersetzt. Eine weitere Wahl französich oder deutsch hat keinen Effekt mehr.

Grüße, Mano
Angehängte Dateien
Dateityp: zip lingus_demo.zip (211,2 KB, 5x aufgerufen)
  Mit Zitat antworten Zitat