我正在尝试跟踪阿拉伯语版Windows(XP Pro x86 SP3)中出现的(C ++)Windows应用程序中的问题。
我们在对话框的静态文本字段中显示如下所示的密码:
0123456789ABC0123456789ABC
...和某事导致前导数字显示为阿拉伯数字:
٠١٢٣٤٥٦٧٨٩ABC0123456789ABC
请注意,只会影响前导数字。这让我觉得Windows的一些自动设施正在引起这种情况,但我搜索过MSDN并没有发现任何线索。我不太了解Windows中的从右到左的语言(或阿拉伯语),所以我不确定机制可能是什么,或者如何抑制这种行为。
任何有英语/阿拉伯语编写Windows应用程序经验的人都可以对此有所了解吗?
感谢您的帮助。
答案 0 :(得分:4)
这称为contextual digit substitution,有时也称为digit shaping。如第二个链接网页所示,您可以在U + 206F前加上强制欧洲数字。