AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Menüs zur Laufzeit

Ein Thema von DelphiSourcer · begonnen am 7. Feb 2005 · letzter Beitrag vom 7. Feb 2005
Antwort Antwort
Seite 2 von 2     12   
urs.liska

Registriert seit: 6. Aug 2003
Ort: Freiburg
195 Beiträge
 
Delphi 6 Professional
 
#11

Re: Menüs zur Laufzeit

  Alt 7. Feb 2005, 16:27
Zitat von DelphiSourcer:
Ich nehme an, das man damit verschiedene Stringkonstanten nach folgendem Muster anlegt:

Delphi-Quellcode:
ResourceString
  sDatei = 'Datei';
  sFile = 'File';
  ............
  sBearbeiten = 'Bearbeiten';
  sEdit = 'Edit';
  ............

type TLanguage = (english, german, french, .... );

  begin
     case Language of
       english: Menu.Items[0].Caption := sFile;
       german: Menu.Items[0].Caption := sDatei;
       french: ...;
     end;
  end;
Nein, das geht anders (und noch wesentlich besser).
In einer Ressourcendatei stehen alle strings, so wie in Deinem Bsp. nach "ResourceString"
Das eigentliche Programm weiß gar nichts von verschiedenen Sprachversionen, sondern Du schreibst einfach:Menu.Items[0].Caption := sDatei; Das ist genau der Punkt daran, dass im eigentlichen Quelltext nicht auf verschiedene SPrachen Rücksicht genommen werden muss.
Für verschiedene Sprachversionen werden einfach verschiedene Versionen der Ressourcendatei hergestellt. Da steht dann z.B.
Delphi-Quellcode:
ResourceString
  sDatei = 'File'
drin. Wie man damit genau umgeht, findest Du in der OH unter "resourcestring" bzw. unter "Internationalisierung" und "Lokalisierung" von Anwendungen. Auf jeden Fall sollten die ResourceStrings in eine eigene Unit.

Die Variante von scp kannte ich nicht, sieht aber sehr interessant aus.

Urs
  Mit Zitat antworten Zitat
Benutzerbild von lume96
lume96

Registriert seit: 14. Sep 2003
Ort: Rognac/Marseille - Frankreich
128 Beiträge
 
Delphi 7 Professional
 
#12

Re: Menüs zur Laufzeit

  Alt 7. Feb 2005, 16:57
Moin,

ich würde mal einen Blick auf GNU GetText werfen.

Da brauchst Du, von ein paar Ausnahmen abgesehen, gar keine Captions per Hand zuzuweisen. Da gibt's, unter Anderem, zwei Funktionen :
TranslateComponent(Self); und
ReTranslateComponent(Self); welche automatisch die Captions, etc... der meissten Kompos anpassen (auch bei Laufzeit).

Alle Übersetzungen sind in Textdateien ausgelagert; für eine neue Sprache muss also nur eine Textdatei übersetzt werden, das Programm bleibt unverändert.

Ich find's ganz praktisch und hatte bis jetzt noch kleine Probleme damit.

Tschüss,
Lutz
Lutz Meyer
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#13

Re: Menüs zur Laufzeit

  Alt 7. Feb 2005, 19:59
Hai DelphiSourcer,

korriegiere doch bitte in deinen Postings die Tags. (Ich habe dazu nämlich keine Lust )
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:41 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