SWT Sprache ändern?

mjdv

Bekanntes Mitglied
Hi Leute,

ich habe hier ein swt Programm, welches JFace und die eclipse rcp nutzt (denke ich zumindest), jetzt ist hier ein Dilalog zum ändern der Sprache, welcher leider nicht funktioniert.

String l = System.getProperty("osgi.nl"); <- damit wird die aktuelle Sprache ausgelesen, und eine neue wird:

Java:
URL relURL = new URL(System//$NON-NLS-1$
						.getProperty("osgi.configuration.area"));

				URL absURL = FileLocator.toFileURL(relURL);
				// URL absURL = Platform.asLocalURL(relURL);
				File configDir = new File(absURL.getPath());

				configFile = new File(configDir, "config.ini");//$NON-NLS-1$

irgendwie so in diese config.ini (von eclipse??) geschrieben. Leider sind nach einem Neustart des Programs alle Ännderungen in dieser Datei weg.

Meine Frage nun, wie kann man dies besser gestalten? Ich hätte mir die Sprache mit IPreferenceStore gemerkt, aber ich weiß leider nciht wie ich am Anfang des Programms die SPrache setzen kann. Kann mir jemand helfen?

Danke schon mal 😉

edit: Kann ich vll. die property osgi.nl mit setProperty speichern?
 
Zuletzt bearbeitet:
Eclipse selbst ändert die Datei beim Start jedenfalls nicht, also änderst entweder du die Datei, oder deine Änderung kam niemals in der Datei an.
EDIT: moment.... du schreibst da oben config.ini. Der -nl Parameter gehört doch eigentlich in die eclipse.ini
 
Doch, ich sehe ja wie es in der Datei steht, bloß wenn ich meine Applikation neustarte, ist der Eintrag wieder weg^^

edit: hmm, ich habe keine Ahnung, is nicht mein Programm ich werds mal testen danke dir😛

edit2: geht auch nicht :O
 
Ich kann auch nur eine eclipse.ini in /etc/ finden, wo ich ja als normaler User gar keine Rechte habe um diese zu ändern :/
 
Ich kann auch nur eine eclipse.ini in /etc/ finden, wo ich ja als normaler User gar keine Rechte habe um diese zu ändern :/

Ja, die Einstellungen gelten für alle User.
Kurz mal nachgeschaut und angeblich soll es mit osgi.nl auch über die config.ini funktionieren, habe ich aber noch nie versucht.
Trag das property mal händisch in die config.ini ein und schau nach ob es dann funktioniert.
 
Nützt nichts, jetzt ist der Eintrag zwar da, wird aber ignoriert 🙁

edit: sorry, wird nciht ignoriert, sondern beim starten einfach gelöscht
 
Und du änderst die in deinem user.home und nicht etwa die im eclipse/configuration Verzeichnis?
Funktioniert es denn wenn du händisch eclipse/configuration/config.ini anpasst?
 
ne, ich habe mir den Pfad von dem configFile asugeben lassen, und den ändere ich auch
Ja, wenn ich eclipse/configuration/config.ini händisch anpasse, dann gehts Oo
 

Zurück
Oben