Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Problem mit GNU Gettest (https://www.delphipraxis.net/198415-problem-mit-gnu-gettest.html)

calibra301 31. Okt 2018 09:56

Problem mit GNU Gettest
 
Hallo,

hab mir eben das GNUGetText angetan. Version 1.2.2 installiert , System ist ein Win10 / Delphi XE8
Die gnugettext.pas die in dem Setup sind mochte mein Delphi aber nicht, String/Ansistring Probleme.
Daher durch die pas von hier:
https://svn.code.sf.net/p/dxgettext/...ettext/sample/
ersetzt. Die schienen dann auch XE8 kompatibel (Schalter ) zu sein und das Projekt lässt sich kompilieren.

Das Projekt zum testen ist nur ein kleines Formular mit einem MainMenue, 2 Knöpfen und einem Label.
Dann die Ordner so erstellt wie gewünscht ( \locale\[Sprachkürzel]\LC_MESSAGES
PO-File erzeugt, mit POEdit übersetzt und als default.mo in den Ordner kopiert.


Beim Form1.OnShow dann:

Delphi-Quellcode:
procedure TFormMain.FormCreate(Sender: TObject);
begin
  UseLanguage ('EN');
  TranslateComponent (self);
end;
Buttons und Label werden korrekt übersetzt angezeigt.
Die Menue-Einträge auch. Nur das "File" und das "Edit" bleiben Englisch obwohl in der default.mo übersetzt.

Kann jemand weiterhelfen ?? Kenne GNUGettext nur aus alten Delphi 6 Zeiten und hab es ewig nicht mehr angefasst.

Danke und Gruss
Calli

calibra301 31. Okt 2018 10:31

AW: Problem mit GNU Gettest
 
Liste der Anhänge anzeigen (Anzahl: 1)
Anbei mal das Projekt (XE8)

Pet04 31. Okt 2018 12:59

AW: Problem mit GNU Gettest
 
Hallo,

versuch es mal mit:

Code:
MenuItem1.Caption := _('Übersetzungstext');

taveuni 31. Okt 2018 14:38

AW: Problem mit GNU Gettest
 
Zitat:

Zitat von calibra301 (Beitrag 1417154)
Buttons und Label werden korrekt übersetzt angezeigt.
Die Menue-Einträge auch. Nur das "File" und das "Edit" bleiben Englisch obwohl in der default.mo übersetzt.
Calli

Wenn es sich um ein TMainMenu handelt musst Du das Property AutoHotKeys auf maManual setzen. Siehe auch hier: http://dxgettext.po.dk/documentation...sked-Questions

dummzeuch 31. Okt 2018 15:51

AW: Problem mit GNU Gettest
 
Zitat:

Zitat von calibra301 (Beitrag 1417154)
Buttons und Label werden korrekt übersetzt angezeigt.
Die Menue-Einträge auch. Nur das "File" und das "Edit" bleiben Englisch obwohl in der default.mo übersetzt.

Kann jemand weiterhelfen ??

Gibt es bei den Menüeinträgen unterstrichene Buchstaben (Hotkeys)? Wenn ja, sind die auch im der .mo-Datei übersetzt?

Vermutlich ist das Problem, wie taveuni schon schreibt, dass die VCL versucht intelligent zu sein und automatische Hotkeys zuweist, die dann in der Übersetzung nicht vorkommen.

Zwei Möglichkeiten:
  1. AutoHotkeys := maManual und selbst welche zuweisen,
    diese dann in der Übersetzung berücksichtigen.
  2. Per Code alle Menüitems explizit übersetzen, dabei vorher mit StripHotkey die Hotkeys entfernen, so dass die Übersetzung funktioniert. Die VCL sollte dann neue Hotkeys erzeugen.

calibra301 2. Nov 2018 06:14

AW: Problem mit GNU Gettest
 
Danke, das war es.

Funktioniert beides. Wenn ich vom MainMenu AutoHotkeys := maManual setzte geht's ohne weiteres zutun,

Manuelles Übersetzen z.B. f1.Caption:=_('File'); geht auch.


Danke !
Calli


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz