![]() |
AW: Lingus (Übersetzungswerkzeug)
Ich nochmal,
die Einträge der Combobox werden leider auch nicht geändert. Uebersetzt habe ich sie aber.Ich find den Fehler nicht, leider, :( wicht, kannst du bitte helfen, wenn du Zeit hast? Danke Renê |
AW: Lingus (Übersetzungswerkzeug)
Hi,
du hast auf dem Formular eine TComboBox, die mit Text befüllt ist. Du rufst Language.Translate(Self) im Formular auf. Der Text bleibt der selbe wie vorher? Und vor Language.Translate() wurde er nicht angepackt, so dass er mit den Daten aus der Sprach-Datei nicht mehr "synchron" ist? Ganz sicher, dass er korrekt übersetzt ist? Richtige Datei geladen? Ich habe es gerade selbst nocheinmal getestet und hier hat es geklappt. Wenn das nicht weiterhilft könntest du mir ein kleines Testprojekt bauen und zuschicken, was nichts macht, ausser diesen Fehler zu zeigen, hätte ich auch kein Problem mit. :) EDIT: Der "zum letzte Post" Button oder wie das heißt hat mich direkt auf dein letztes Posting geworfen, obwohl ich das davor noch gar nicht gelesen hatte? Ist hier was faul oder bin ich verwirrt? Schaue nochmal über das andere Posting von dir... Liebe Grüße, Alexander |
AW: Lingus (Übersetzungswerkzeug)
Versuch mal,
Delphi-Quellcode:
nur am Anfang im FormCreate() zu machen, und zwar, bevor du das erste Mal Translate() aufrufst. Ansonsten sieht das glaube ich okay aus, und ich meine, ein mehrmaliges LoadFromFile() nicht wirklich getestet zu haben, weil es meiner Meinung nach irgendwie "überflüssig" ist...
Language.LoadFromFile(ProgDir + 'lang.lpf');
Vielleicht hilfts, ansonsten schaue ich mir das heute Nacht oder morgen Abend mal an... Noch ein Edit: Die Idee mit der Demo-Applikation ist super, da werde ich mal bei Zeiten was schustern... |
AW: Lingus (Übersetzungswerkzeug)
Fehler behoben und im Subversion, irgendwann in naher Zukunft im ersten Post und auf der Webseite.
|
AW: Lingus (Übersetzungswerkzeug)
Nabend,
es gibt eine neue Lingusversion zum Download auf der Webseite, die im ersten Post steht. Hinzugekommen sind Ignore-Listen für bestimmte Dateien oder Strings, so dass man beim Synchronisieren die Übersicht behält :-D Achja, und eine kleine Demo-Applikation ist jetzt auch dabei. Liebe Grüße |
AW: Lingus (Übersetzungswerkzeug)
Hallo Alex,
du hast da mit Lingus ein tolles Tool geschaffen. Kompliment! Ich entwickle unter Delphi7 ein größeres Projekt und möchte es mit Lingus auf Mehrsprachigkeit umstellen. Zum Test habe ich ein kleineres Projekt erstellt und damit etwas experimentiert. Die Beschriftungen werden bis auf eine Ausnahme auch beim Sprachenwechsel alle fein geändert. Nur die Menüs und Untermenüs wollen nicht. Muss ich bei Menüs irgend eine Besonderheit beachten oder ist die Implementation noch nicht so weit? Grüße, Mano |
AW: Lingus (Übersetzungswerkzeug)
Hi,
mit den Menüs gibt es keine (mir bekannten:-D) Probleme und das müsste einfach nur funktionieren. Kannst du mir das Test-Programm, wo es bei dir nicht klappt, einfach zu senden oder hier anhängen? Ich glaube, so kommen wir am schnellsten zur Lösung des Problems. Liebe Grüße, Alexander |
AW: Lingus (Übersetzungswerkzeug)
Liste der Anhänge anzeigen (Anzahl: 1)
Hier ein "Minimalbeispiel" mit drei Sprachen:
Delphi-Quellcode:
Bei der Wahl von Englisch wird auch das Untermenü korrekt übersetzt. Eine weitere Wahl französich oder deutsch hat keinen Effekt mehr.
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 = 'en' then 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 = 'de' then 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 = 'fr' then begin Language.CurrentLanguage := LanguageList[i]; Break; end; end; Language.Translate(Self); end; end. Grüße, Mano |
AW: Lingus (Übersetzungswerkzeug)
Hi,
Problem ist erkannt. Du hast beim MainMenu1 AutoHotKeys auf maAutomatic gestellt. Ich wusste gar nicht, dass es diese interessante Eigenschaft gibt, demnach mache ich das immer per Hand. Die Sache dabei ist, dass Delphi in die .dfm den von Lingus eingelesenen String packt, z.B. "Datei", und dass das Menü dann daraus "&Datei" macht - Lingus kennt "&Datei" aber nicht, weil aus der .dfm nur "Datei" eingelesen wurde, demnach kann das Menü nicht übersetzt werden. Als schnelle Lösung müsstest du AutoHotKeys wohl auf maManual stellen und dir die Arbeit mit den HotKeys selbst machen... Vielleicht könnte Lingus das irgendwann auch selbst regeln, aber bis ich da dran weiter machen kann, werden noch ein paar Monate vergehen, das hier ist meiner Meinung nach nur ein kleines Problem. BTW: Du kannst die Sprache auch mit Language.SetLanguage('en') auf Englisch setzen, das Argument, was mitgegeben wird, ist einfach die Sprach-ID. Dann kann man sich die Schleifen sparen. Warum das auf der Hilfe-Seite und vielleicht sogar im Demo-Projekt von mir so kompliziert gemacht ist, fällt mir gerade nicht ein :-D Liebe Grüße, Alexander |
AW: Lingus (Übersetzungswerkzeug)
Hallo Alex,
ich wusste bis jetzt auch nichts von dieser Eigenschaft :P. Bei Delphi7 scheint das die Standardeinstellung zu sein. Auf diese Option kann ich locker verzichten. Vielen Dank für die schnelle Hilfe! Jetzt funktioniert ja alles perfekt. Danke und Grüße, Mano |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz