Aplicacion Multilenguaje ¿como lo harian ustedes?
Publicado por EmaAldaz (1 intervención) el 04/08/2020 17:35:36
Hola, muy buenos días a todos!
Estoy trabajando sobre un sistema desarrollado en vb6 y necesito hacerlo multilenguaje.
Lo que hice hasta el momento fue cargar todos los controles (labels, textbox, command, entre otros) a una base de datos. La tabla tiene la siguiente estructura:
Consulto la misma y el resultado lo vuelco en los controles asignando los caption correspondientes.
Ahora el problema es el siguiente:
Existen condicionales o comparativas por código que dejarían de funcionar si cambio de idioma el control, puesto que no tendrían el mismo contenido que tenían en un principio.
Esto dejaría de funcionar porque depende del idioma ya no seria "Aceptar".
Como lo harían ustedes?
Mi idea es duplicar los controles y utilizar los nuevos como una mascara. Al realizar una acción sobre X control que se "sincronice" con su par y de esta forma no tocaría el código original.
La contra es que tengo que duplicar todos los controles y resulta algo tedioso.
Alguna otra opción? Espero puedan ayudarme con ideas y luego yo haré el código.. pero necesito de su ayuda.
Desde ya muchísimas gracias!
Estoy trabajando sobre un sistema desarrollado en vb6 y necesito hacerlo multilenguaje.
Lo que hice hasta el momento fue cargar todos los controles (labels, textbox, command, entre otros) a una base de datos. La tabla tiene la siguiente estructura:
1
2
3
4
5
6
7
8
9
CREATE TABLE opIdiomasControles(
id int PRIMARY KEY IDENTITY(1,1),
formulario nvarchar(250),
idIdioma int,
nombre nvarchar(50) NOT NULL,
texto nvarchar(250),
indice int,
FOREIGN KEY (idIdioma) REFERENCES opIdiomas(id)
)
Consulto la misma y el resultado lo vuelco en los controles asignando los caption correspondientes.
Ahora el problema es el siguiente:
Existen condicionales o comparativas por código que dejarían de funcionar si cambio de idioma el control, puesto que no tendrían el mismo contenido que tenían en un principio.
1
If (control.caption = "Aceptar ")
Esto dejaría de funcionar porque depende del idioma ya no seria "Aceptar".
Como lo harían ustedes?
Mi idea es duplicar los controles y utilizar los nuevos como una mascara. Al realizar una acción sobre X control que se "sincronice" con su par y de esta forma no tocaría el código original.
La contra es que tengo que duplicar todos los controles y resulta algo tedioso.
Alguna otra opción? Espero puedan ayudarme con ideas y luego yo haré el código.. pero necesito de su ayuda.
Desde ya muchísimas gracias!
Valora esta pregunta


0