我想在对话框窗口中显示非ASCII“ohm”字符。我以为我可以通过资源文件执行此操作,但这不起作用。
STRINGTABLE
BEGIN
IDS_OHM "Ω"
END
然后在程序中
CString thermUnits = LoadString(IDS_OHM);
然而,它只是显示为'?'字符。有没有人有其他想法?
提前谢谢!
答案 0 :(得分:2)
该字符是大写的希腊语Omega,所有希腊字符都以Symbol
字体找到。
答案 1 :(得分:0)
那是什么字符代码?它可能不是您用于对话框窗口的字体中的代表。
答案 2 :(得分:0)
这可能是与字体相关的问题,您确定用于对话框的字体是否包含欧姆字符?
或者也许
IDS_OHM "\u03A9"
会工作吗?使用unicode
答案 3 :(得分:0)
我过去遇到过类似的问题,它是由* .rc文件保存为ANSI文本而不是Unicode文件引起的。因此,保存文件时,STRINGTABLE中的任何非ANSI都会消失。
对我有用的解决方案是在外部编辑器中打开rc文件并将其另存为Unicode。在那之后,一切正常。