Visual Basic - Como cambiar un MSGBOX en tiempo de ejecucion??

Life is soft - evento anual de software empresarial
 
Vista:

Como cambiar un MSGBOX en tiempo de ejecucion??

Publicado por SUNCAND (23 intervenciones) el 19/12/2004 14:16:15
Hola a todos , tengo una duda y es que estoy haciendo un programa al cual ahora me doy cuenta que no se como puedo hacer para cambiar los msgbox que he insertado para que según la opcion de idioma aparezca en un idioma u otro .
Las cadenas de texto con el idioma están recogidas en un archivo de configuración externo que he creado , pero lo único que se cambiar son las cadenas de texto de las etiquetas y demás , pero me encuentro con el problema de no saber como cambiar los MSGBOX ¿alguien me puede dar una pista?
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Como cambiar un MSGBOX en tiempo de ejecucion??

Publicado por FuckPower (3 intervenciones) el 13/06/2005 21:27:33
Agrega este código al inicio de tu programa:

Const LOCALE_SENGLANGUAGE = &H1001
Private Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long

Private Sub Form_Load()
MsgBox GetInfo(LOCALE_SENGLANGUAGE)
End Sub

Public Function GetInfo(ByVal lInfo As Long) As String
Dim Buffer As String, Ret As String
Buffer = String$(256, 0)
Ret = GetLocaleInfo(LOCALE_USER_DEFAULT, lInfo, Buffer, Len(Buffer))
If Ret > 0 Then GetInfo = Left$(Buffer, Ret - 1) Else GetInfo = ""
End Function

Lo que a ti te serviría es, en vez de desplegar con Msgbox el nombre del lenguaje del sistema operativo, almacenarlo en una variable publica (por ejemplo: Public sIdioma As String), entonces, antes de desplegar un Msgbox, consultas el contenido de sIdioma para saber en qué idioma mostrar el mensaje. Ojalá te resulte.

Slds.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar