2014-10-31 125 views
0

我有问题要翻译,我可以翻译按钮,标签,TextBoxs等,但我不知道怎么翻译MSGBOX ......我有这样的代码MSGBOX多语言

Imports System.Threading.Thread 
Imports System.Globalization  
Public Class FrmLlenguatje 
Private Sub btEspañol_Click(sender As Object, e As EventArgs) Handles btEspañol.Click 

    CurrentThread.CurrentUICulture = New CultureInfo("ES") 
    Dim p02Es As New Form1 
    p02Es.Show() 

    InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages(0) 
End Sub 

Private Sub btCatalà_Click(sender As Object, e As EventArgs) Handles btCatalà.Click 

    CurrentThread.CurrentUICulture = New CultureInfo("CA") 
    Dim p02Ca As New Form1 
    p02Ca.Show() 

    InputLanguage.CurrentInputLanguage = InputLanguage.InstalledInputLanguages(0) 
End Sub 
End Class 

而且我想知道一种方法来链接此按钮单击其他窗体,然后尝试如果我可以创建一个If/else语句来翻译这些MsgBox ..

我希望你能帮助我..谢谢!

回答

0

我用1个标签,并在form_loading此字符串来确定O.S.当前语言:

label1.Text=Globalization.CultureInfo.CurrentCulture.ThreeLetterISOLanguageName 

一些3个字符的语言ID是:

ita, spa, eng, nld, fra, rus, zho. 

然后,当你创建一个消息框,使用了一些类似这样的

If Form1.Label1.Text = "eng" Then 
If MsgBox("Save the changes?", vbYesNo) = vbYes Then 
else 
end if 
If Form1.Label1.Text = "spa" Then 
If MsgBox("¿Guardar los cambios?", vbYesNo) = vbYes Then 
else 
end if 

的是/否自动确定(翻译)在您目前的语言。

catalan = cat