Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#2

AW: Vcl.Dialogs.InputQuery Button Sprache wechseln

  Alt 25. Okt 2022, 22:28
Die "Sprache" in den Versions-Infos ist grundsätzlich erstmal nur für diese VersionsInfo-Ressource.
Und eventuell noch für die StringResourcen, aber nur wie die Resourcen markiert sind ... welche Texte in die RTL/VCL-Resourcen kompiliert/gelinkt werden, das ist was Anderes.


Weil dein Programm deutsch kompiliert wurde und DU "nur" die deutsche Sprache (RTL/VCL) mitgegeben hast.

C:\Program Files (x86)\Embarcadero\Studio\22.0\bin\BDSSetLang.exe -> Bibliotheks Sprache

Alternativ kann man zusätzliche Sprach-Resourcen mitgeben.
Diese werden dann anhand der Windows-Sprache ausgewählt.

z.B. wenn man mit Laufzeitpackages kompiliert
vcl280.bpl (englisch drin)
vcl280.de (zusätzliches deutsch)
vcl280.fr
vcl280.ja

bzw. siehe Tools > Translations-Manager


Oder ein fremdes Translation-Tool benutzen, z.B. dxGetText hookt die String-Resourcen und gibt dann seine Übersetzung raus.



Input-Query ist immer eine VCL-Form,
aber z.B. ShowMessage ist entweder ein WinAPI-TaskDialog, oder wenn nicht möglich (uraltes Windows) oder Designs abgeschaltet (TaskDialogAPI fehlt/deaktiviert), ersatzweise eine VCL-Form.

Bei den VCL-Forms ist das somit ein TButton und man könnte sich da selber reinhacken.



Theoretisch kann man Resourcen in unterschiedlichen Sprachen einkompilieren, also z.B. auch mehrere Versionsinfos mit Texten in anderen Sprachen.
Ich weiß aber nicht wie der Sprachloader von Delphi damit umgeht, oder ob das immer in getrennten DLLs liegen muß.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (25. Okt 2022 um 22:44 Uhr)
  Mit Zitat antworten Zitat