【问题标题】:MsgBox MultiLanguageMsgBox 多语言
【发布时间】:2014-10-31 00:36:19
【问题描述】:

我有翻译问题,我可以翻译按钮、标签、文本框等,但我不知道如何翻译 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..

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

【问题讨论】:

    标签: vb.net multithreading visual-studio-2010 multilingual


    【解决方案1】:

    据我所知,.Net 不支持 MessageBox。你可以在这里阅读更多...

    MessageBox buttons - set language?

    【讨论】:

      【解决方案2】:

      我使用了 1 个标签并在 form_loading 这个字符串中确定了操作系统。当前语言:

      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
      

      【讨论】:

        猜你喜欢
        • 2018-12-10
        • 2020-07-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-01-12
        • 2015-07-18
        • 2012-05-04
        • 2011-05-04
        相关资源
        最近更新 更多