我们的遗留应用程序之一是在Delphi6中,我们无法在此应用程序的标签和短信中显示“泰铢”的货币符号。
我们使用Baht的Unicode来设置标签/短信的文本(即0E3F),但它总是呈现为'?'。
我们尝试将所述标签/短信的字体属性更改为ANSI_CHARSET,DEFAULT_CHARSET(甚至是THAI_CHARSET),但没有运气。选择的字体类型是“Microsoft Sans Serif”,其货币符号为Baht(不是'MS Sans Serif',它没有泰铢货币符号)。
有没有人在Delphi6中遇到过这种情况?如果有的话有解决方案吗?
提前致谢.. !!
答案 0 :(得分:2)
我们使用Baht的Unicode来设置标签/短信的文本(即0E3F),但它总是呈现为'?'。
?
字符表示当Unicode字符转换为ANSI时,在使用的ANSI代码页中未找到任何字符。你的选择:
后一个选项更好,但当然在Delphi 6中有点棘手,它开箱即用,是一个基于ANSI的工具。要使用Delphi 6制作Unicode GUI,您需要使用TNT Unicode组件。
答案 1 :(得分:2)
Windows'应用程序charmap.exe
,启用了高级视图,具有字符集选择,当您选择字符时,底部的状态行显示旁边的字符的256位十六进制代码unicode代码点。
(在开始菜单中搜索“字符映射”,或按Windows键+ R并键入“charmap”)
如果我在这里使用“Windows:Thai”进行尝试,我会得到代码为0xDF的泰铢符号。因此,如果您在字符串中写入#$DF
或#223
,或在键入0 2 2 3时按Alt键,则应该有效。
答案 2 :(得分:1)
原生的Unicode前Delphi控件允许仅在具有此特定系统区域设置的系统上输入特定的本地(前泰语)字符。
用于Unicode前Delphi版本的解决方法是用TNT Unicode控件替换本机VCL控件。
我今天不知道TNT Unicode控件的状态。您可以尝试在Google上搜索。