Hallo divby0
ich hoffe ich 'darf' hier für eine Software von Sakura antworten aber ich setze das ganze ja schon ne Weile ein. Hier einige Codeschnipsel zum grundsätzlichen Einsatz. Ich hab das Ganze mit bedingter Compilierung aufgebaut da ich nur BDS2006 habe und keine Post-Build-Events nutzen kann. Per Batch-Datei im Tool-Menu kann ich die Anwendung für Multilingual erzeugen, aus der
IDE zum normalen entwickeln per F9 usw.
Delphi-Quellcode:
// Unit einbinden
uses {$IFDEF MultiLingual} dwsLocalizer,
{$ENDIf} Datenmodul;
// Initialisierung im FormCreate bei dyn. erzeugten Forms
procedure TForm_AuswertungArbeitszeit.FormCreate(Sender: TObject);
begin
{$IFDEF MultiLingual}
GetLocalizer.InitializeLanguage(sprache);
{$EndIF}
end;
// Anzeigen der verfügbaren Sprachen in einer Listbox
{$IFDEF MultiLingual}
GroupBox_Sprache.Visible:=true;
GetLocalizer.GetLanguages(ListBox_Sprache.Items);
if ListBox_Sprache.Count>0
then
begin
i:=0;
while (i<Listbox_Sprache.Count)
and (sprache<>Integer(ListBox_Sprache.Items.objects[i]))
do inc (i);
if i<Listbox_Sprache.Count
then ListBox_Sprache.ItemIndex:=i;
end;
{$Else}
GroupBox_Sprache.Visible:=false;
{$EndIF}
// und Sprache auswählen zur Laufzeit
{$IFDEF MultiLingual}
if ListBox_Sprache.ItemIndex>=0
then
sprache:=Integer(Listbox_Sprache.Items.Objects[ListBox_Sprache.ItemIndex]);
GetLocalizer.InitializeLanguage(sprache);
{$endIF}
end;
Im Video wird das aber eigentlich ganz gut erklärt.
CG