Java: Strings lokalisieren
2009-12-30 13:55
7wingera
Hallihallo!
Ich habe ein Problem: In einer Anwendung möchte ich alle Strings lokalisieren, die irgendwie vom Benutzer gesehen werden. Bisher läuft das so, dass eine Klasse namens LanguageManager je nach eingestellter Locale eben andere Strings in ein ResourceBundle lädt und dann mit den erhaltenen Werten statische, öffentliche Felder initialisiert.
Möchte ich nun bspw. ein Label mit nem bestimmten Titel initialisieren, mach ich das mit new JLabel(LanguageManager.LABEL_1).
Funktioniert zwar, aber bei einem Wechsel der Locale muss die GUI neu aufgebaut werden.
Wenn ich jetzt aber die Locale ändere, nachdem die GUI schon realisiert wurde, weiß ich jetzt nicht, wie ich geschickt veranlassen sollte, dass alle Labels im Betrieb etc. auch neu gesetzt werden. (Das gleiche Problem stellt sich dann ja auch bei Bildern und Soundfiles.)
Wenn da jemand nen Tip hätte, wär das super ;-)
Danke,
Wolle
Ich habe ein Problem: In einer Anwendung möchte ich alle Strings lokalisieren, die irgendwie vom Benutzer gesehen werden. Bisher läuft das so, dass eine Klasse namens LanguageManager je nach eingestellter Locale eben andere Strings in ein ResourceBundle lädt und dann mit den erhaltenen Werten statische, öffentliche Felder initialisiert.
Möchte ich nun bspw. ein Label mit nem bestimmten Titel initialisieren, mach ich das mit new JLabel(LanguageManager.LABEL_1).
Funktioniert zwar, aber bei einem Wechsel der Locale muss die GUI neu aufgebaut werden.
Wenn ich jetzt aber die Locale ändere, nachdem die GUI schon realisiert wurde, weiß ich jetzt nicht, wie ich geschickt veranlassen sollte, dass alle Labels im Betrieb etc. auch neu gesetzt werden. (Das gleiche Problem stellt sich dann ja auch bei Bildern und Soundfiles.)
Wenn da jemand nen Tip hätte, wär das super ;-)
Danke,
Wolle