【问题标题】:C# Display unicode text in the caption of a message boxC# 在消息框的标题中显示 unicode 文本
【发布时间】:2009-05-19 06:03:49
【问题描述】:

C# 2005.

我的应用程序支持英语和泰语两种语言。

但是,在我的标题消息框中,它将显示问号,即????????????当我必须显示泰语时。

消息框字符串文本没问题。显示正常。然而,它只是有问题的标题。

我是否需要以某种方式在消息框中启用 unicode?​​p>

非常感谢,

【问题讨论】:

  • 显示消息框的代码长什么样子?

标签: c# unicode


【解决方案1】:

MessageBox 标题对 unicode 字符没有任何问题。我的猜测(没有看到任何代码)是标题的字符串经过了一些不支持 unicode 的处理。

您是否尝试过在标题中显示带有硬编码泰语文本的 MessageBox?如果显示正常,您应该在代码中向后跟踪标题字符串,并确定它在哪里“去统一编码”。

【讨论】:

  • 好答案!我喜欢你从逻辑上推断问题的方式。
  • 您好,我已经直接在消息框的标题中添加了泰语。 MessageBox.Show(CATWinSIP_MsgStrings.languageFeatures, "ออกจากโปรแกรม");但是,我仍然得到问号。有任何想法吗?谢谢。
  • 您的窗口设置是否对窗口标题和消息框中的文本使用相同的字体?您可以在常规窗口标题中显示泰文字符吗?
  • 我想我知道问题出在哪里。我正在使用皮肤引擎,但我认为它不支持 unicode。我试过有和没有皮肤。没有皮肤的可以工作,有皮肤的就不行。谢谢。
【解决方案2】:

您可以安装和使用支持所需字符的字体。并非所有字体都支持所有字符。 [] 框字符是“不支持”的字体表示

默认情况下,文本框可能使用 MS Sans Serif,因此请将其更改为 Arial 或“Mangal”Arail uniocde。

arial 支持和 mangal 支持大多数语言字符。如果要检查字体是否已预装,您可以将 unicode 代码粘贴到“写字板”或使用类型运行框“charmap”检查

【讨论】:

  • 它们表示消息框字符串文本可以,但标题不行。不太可能是字体问题。
猜你喜欢
  • 2010-11-25
  • 1970-01-01
  • 2010-10-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-08
相关资源
最近更新 更多