2009-09-16 12 views
7

Pracuję nad aplikacją Eclipse RCP z lokalizacją. Użytkownik powinien mieć możliwość zmiany języka używanego w aplikacji w locie. Ponowne uruchomienie aplikacji nie powinno odbywać się podczas zmiany języka. Powinna również istnieć możliwość przełączania się między językami pisanymi od lewej do prawej, a językami pisanymi od prawej do lewej.
Czy istnieje (dobry) sposób rozwiązania tego problemu?Dynamiczne przełączanie języków w aplikacji Eclipse RCP

+0

Trudność polega na tym, że nie wierzę, że możesz automatycznie wywołać 'setText (*)' na wszystkim ... – VonC

Odpowiedz

4

Według this thread:

Większość bibliotek zaćmienie załadować swoje informacje Język na tworzenie widżetów. Jeśli później zmienisz ustawienia regionalne, musisz zrestartować środowisko Eclipse, aby to zadziałało.

można napisać tego rodzaju dynamiczne zachowanie w swoim programie SWT jednak (gdy przełączniki locale, trzeba by zadzwonić setText(*) na wszystko :-)

Więc to nie jest obecnie udało dynamicznie chyba zaprogramować to sam ...
Inne RCP/wtyczki aplikacja like Birt określić te same instrukcje (czyli "Restart Eclipse" na końcu ...)


Powiedział, że nieco inny problem został ustawiony w this thread:

przełączyć ustawienie języka, restart, a następnie uruchomić w tym języku

Dostałem go do pracy poprzez czytanie bug 222023 i naśladując org.eclipse.ui.internal.ide.actions.OpenWorkspaceAction

próbowałem go ręcznie:

  • dodanej "-configuration @user.home/.myapp/configuration" do launcher.ini
  • dodano "osgi.nl" do użytkowników config.ini przebywających tam i działało.

Ponieważ mogę uzyskać dostęp do config-Location przez Platform.getConfigurationLocation() Myślę, że to może być sposób.

Uwaga: dodanie "osgi.nl" do JNLP webstart works too.

+0

Czy możliwe jest automatyczne uzyskanie "wszystkiego" (wywołanie setText (*))? – zizzo

1

Musisz wywołać setText dla każdego widżetu, z odpowiednim tekstem. Ponieważ nie ma mapowania zmiennych tekstowych na widgetach, musiałbyś to zrobić również całkowicie ręcznie.

Powiązane problemy