常规 MBCS 编程建议

使用以下提示:

  • 为获得灵活性,请尽可能使用运行时宏,例如 _tcschr_tcscpy。 有关详细信息,请参阅 tchar.h 中的一般文本映射

  • 使用 C 运行时 _getmbcp 函数获取有关当前代码页的信息。

  • 不要重复使用字符串资源。 根据目标语言,给定字符串在翻译时可能有不同的含义。 例如,应用程序主菜单上“File”的翻译可能不同于与对话框中字符串“File”的翻译。 如果需要使用同名的多个字符串,请对每个字符串使用不同的字符串 ID。

  • 你可能想要了解应用程序是否在启用了 MBCS 的操作系统上运行。 为此,请在程序启动时设置一个标志;不要依赖 API 调用。

  • 设计对话框时,允许在 MBCS 翻译的静态文本控件末尾留出大约 30% 的额外空间。

  • 在为应用程序选择字体时要小心,因为某些字体在所有系统上都不可用。

  • 选择对话框的字体时,请使用 MS Shell Dlg 而不是 MS Sans Serif 或 Helvetica。 在创建对话框之前,系统会将 MS Shell Dlg 替换为正确字体。 使用 MS Shell Dlg 可确保操作系统中处理此字体的任何更改都将自动可用。 (MFC 会将 MS Shell Dlg 替换为 Windows 95、Windows 98 和 Windows NT 4 上的 DEFAULT_GUI_FONT 或系统字体,因为这些系统无法正确处理 MS Shell Dlg。)

  • 设计应用程序时,确定哪些字符串可以本地化。 如果存在疑问,则假定将本地化任何给定字符串。 因此,不要将可本地化的字符串与无法本地化的字符串混合在一起。

另请参阅

MBCS 编程提示
递增和递减指针