vb6 - 使用VB6.0制作不同语言的菜单(孟加拉语)

标签 vb6 internationalization

我想制作可以以英语以外的特定语言显示菜单项的菜单。 VB6.0的菜单编辑器中没有字体选择标准 那么我该怎么做呢??

最佳答案

VB6 是一个外部 ANSI 应用程序。它内部和 COM 中都是 unicode。然而,任何与 API 调用相关的事情,无论是直接还是间接,都使用 ANSI。

当您创建窗口(例如窗体)时,如果您是 ANSI 程序,则您或 VB 使用 CreateWindowsExA;如果是 unicode,则使用 CreateWindowsW。如果您使用 ANSI 版本,那么一切都是 ANSI。 Windows 发送到窗口的所有字符串都是 ANSI,并且 Windows 假定您只返回 ANSI 字符串。

当 VB 发布时,大多数安装的 Windows 都无法处理 unicode。

您可以使用 unicode 字符的字节数组而不是字符串直接将这些函数作为 unicode 调用(您仅传递数组中的第一个字节,Windows 认为它​​是 unicode 字符串)。

如果您打算这样做,您将需要阅读基本的 C 示例(这并不困难),因为这是完成这些内容的语言。其他人都使用表单包。

现在对于东亚语言,他们使用 DBCS。它类似于UTF8,但与unicode 无关。 Windows 自动进行转换。

在区域设置中查看非 unicode 设置。

这是来自帮助

当您使用专为 SBCS 字符设计的字体时,DBCS 字符可能无法在 DBCS 版本的 Windows 中正确显示。使用英语版 Visual Basic 或任何其他 SBCS 语言版本开发支持 DBCS 的应用程序时,需要更改 Font 对象的 Name 属性。 Name 属性确定用于在控件、运行时绘图或打印操作期间显示文本的字体。此属性的默认设置是 Visual Basic 英文版中的 MS Sans Serif。要在 DBCS 环境中正确显示文本,必须将设置更改为适合运行应用程序的 DBCS 环境的字体。您可能还需要通过更改 Font 对象的 Size 属性来更改字体大小。通常,应用程序中的文本在大多数东亚平台上以 9 号字体显示效果最佳,而在欧洲平台上通常使用 8 号字体。

这些注意事项也适用于使用您的应用程序打印 DBCS 字符。

关于vb6 - 使用VB6.0制作不同语言的菜单(孟加拉语),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7457204/

相关文章:

Java 国际化

android - 是否需要准备values-zh和values-zh-rHK

ios - 动态添加新的语言字符串文件以在 iOS 中进行本地化

spring - 消息包键中的空格

vb6 - 如何重新分发使用 Crystal Reports 的 VB 6 应用程序?

c# - 如何从 C# 访问和理解旧的 dll

dll - VB 6.0 DLL 中的错误处理

.net - 如何避免出现以下错误: "Automation Error. It is illegal to call out while inside message filter "?

vb6 - 如何在大型 Visual Basic 项目中查找变量或函数的来源

mysql - 一列 SQL 表,该列是一个 ID - 这很疯狂吗?