2009-09-16 15 views
7

Estoy trabajando en una aplicación Eclipse RCP con localización. Un usuario debería ser capaz de cambiar el idioma utilizado en la aplicación sobre la marcha. Un reinicio de la aplicación no debería tener lugar durante este cambio de idioma. También debería ser posible cambiar entre los idiomas escritos de izquierda a derecha y los idiomas escritos de derecha a izquierda.
¿Hay una (buena) manera de resolver este problema?Cambio de idioma dinámico en una aplicación Eclipse RCP

+0

La dificultad es que no creo que pueda llamar 'setText (*)' en todo automáticamente ... – VonC

Respuesta

4

Según this thread:

La mayoría de las bibliotecas de eclipse de carga hasta su información de texto sobre creación de widgets. Si luego cambias tu configuración regional, debes reiniciar Eclipse para que tenga efecto.

Se puede escribir ese tipo de comportamiento dinámico en su propio programa SWT, sin embargo (cuando los interruptores de configuración regional, que había necesidad de llamar setText(*) sobre todo :-)

Así que esto no es actualmente administrado de forma dinámica menos que programa usted mismo ...
Otros RCP/plugins aplicación like Birt especificar las mismas instrucciones (es decir, "Reiniciar Eclipse" al final ...)


Dicho esto, un problema ligeramente diferente se encuentra en this thread:

interruptor de la configuración de idioma, reinicio y vuelva a ejecutar en ese idioma

lo tengo para trabajar mediante la lectura de bug 222023 e imitando org.eclipse.ui.internal.ide.actions.OpenWorkspaceAction

me trataron de forma manual:

  • añade "-configuration @user.home/.myapp/configuration" al launcher.ini
  • agregó "osgi.nl" a los usuarios config.ini que residen allí y funcionó.

Desde puedo tener acceso al config-Location través Platform.getConfigurationLocation() supongo que podría ser el camino.

Nota: la adición de "osgi.nl" al jnlp WebStart works too.

+0

¿Es posible obtener "todo" (para llamar a setText (*) encendido) automáticamente? – zizzo

1

Debería llamar a setText en cada widget, con el texto correspondiente. Como no hay asignación de texto variable en los widgets, también debería hacerlo de forma completamente manual.

Cuestiones relacionadas