请教:CListCtrl不能显示中文????

Colorstone0823 2003-10-13 08:15:05
我在ListCtrl中加入了一些英文的字符串(使用InsertColumn、InsertItem、SetItemText)一切显示正常,可是我把其中的串换成中文时显示出来的都是乱码,注:我用AppWizard建的是一个英文的工程,里面的资源也都设的是中文的。

请问这是怎么回事?难道CListCtrl不支持中文??应该如何解决?谢谢!
...全文
221 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhongxd 2003-10-22
  • 打赏
  • 举报
回复
将字体设置为系统字体
zzhig 2003-10-21
  • 打赏
  • 举报
回复
good
蒋晟 2003-10-21
  • 打赏
  • 举报
回复
sure,but u'd better use the font named "system"
hardstudylulin 2003-10-21
  • 打赏
  • 举报
回复
学习
Colorstone0823 2003-10-21
  • 打赏
  • 举报
回复
To jiangsheng(蒋晟.Net) :

我只要把对话框的字体设成"MS Sans Serif"的确可以正确显示了,多谢晟哥帮忙了,呵呵,以前老麻烦你的(我是你公司对面的那所学校的,:) )。这样可以解决我的问题,如果我把字体设成System,是不是在在日文的操作系统上对话框就会自动使用日文的字体,在法语的操作系统上就可以自动使用法语的字体?我手头上没有这样的系统可以试试,不过我希望我的程序可以支持所有的这些语言,只要它机器上有相应的字体。
Colorstone0823 2003-10-19
  • 打赏
  • 举报
回复
To jiangsheng(蒋晟.Net):

我需要从外部的一个文本文件(english.txt)调入资源,所有的资源都是放在这个文件中的。这样用户就可以很容易地实现本地化,即他只需要把english.txt中的文件翻译成他本地的相应语言(比如中文)即可。我的问题是这样的:我如果把对话框的字体设为“Microsoft Sans Serif”,将不能正确显示中文(CListCtrl好象使用的是对话框的字体,button什么的好象不是),如果我把对话框的字体设成“宋体”,中文倒是可以正常显示了,可是我觉得这样还是有问题的,比如法语,这样还是不能正确显示的。我的目标是:只要用户安装了相应的字体,并且把相应的语言文件翻译好了,就可以在对话框中正常显示,程序本身不需要重编译,这个问题应该如何解决呢?字体应该设成什么呢?

谢谢大家的帮助!
蒋晟 2003-10-19
  • 打赏
  • 举报
回复
When an MFC application is run under a DBCS (Double-byte Character Set, including Japanese, Chinese and Korean) in Windows NT or Windows 95, the default font specified for the dialog boxes within that application will be changed to the system font if they were originally set as "MS Sans Serif" or "Helv" in the RC file.
Knowledge Base
Q152099
MFC Dialog Font Substitution Under DBCS System
蒋晟 2003-10-15
  • 打赏
  • 举报
回复
use Resourse Only Dlls an AfxSetResourceHandle

Command what is yours
Conquer what is not
vcforever 2003-10-14
  • 打赏
  • 举报
回复
不会啊!·我用CListCtrl已经很长时间了,怎么没有发现这个问题!??
你用的是中文的操作系统吗???
AkiraChing 2003-10-14
  • 打赏
  • 举报
回复
派生于CWnd的控件都可以使用CWnd::SetFont的函数,或者你用该函数设置可以显示的字体,或者你选用一种可以显示所有文字的字体,再或者用unicode编译
smallcrocodile 2003-10-14
  • 打赏
  • 举报
回复
关注
Colorstone0823 2003-10-14
  • 打赏
  • 举报
回复
To ghz(冰河):
用你的方法是可以的,谢谢了!:) 不过还有个问题,我的对话框上的资源都是放在一个文本文件中的,运行时会根据文本文件中的内容来设置相应控件中的字符串值,这样用户很容易地就把一种语言翻译成另一种语言,因此如果我把对话框设成中文字体的话,我想如果用户自己翻译了一种语言,比如法语或者希腊语,显示出来的依然会是乱码的,这个应该如何处理呢?谢谢!
wglacier 2003-10-14
  • 打赏
  • 举报
回复
你的对话框要设成支持中文的字体,对话框要用中文资源
vagabondkq 2003-10-14
  • 打赏
  • 举报
回复
可以啊
AkiraChing 2003-10-14
  • 打赏
  • 举报
回复
好像中文字体都可以吧,宋体之类的
Colorstone0823 2003-10-14
  • 打赏
  • 举报
回复
To AkiraChing(水银) :

“或者你选用一种可以显示所有文字的字体”,什么样在字体可以满足这样的条件?谢谢!
Colorstone0823 2003-10-13
  • 打赏
  • 举报
回复
To beyondtkl(大龙驹):
我用了你的方法,不成,不知道为什么?


tigerVC 2003-10-13
  • 打赏
  • 举报
回复
加入中文支持不就行了,
beyondtkl 2003-10-13
  • 打赏
  • 举报
回复
TO:xiaohyy(醉大饿极)
过来给兄弟看看 这个:
http://expert.csdn.net/Expert/topic/2351/2351463.xml?temp=.3134424
xiaohyy 2003-10-13
  • 打赏
  • 举报
回复
>>注:我用AppWizard建的是一个英文的工程

??
加载更多回复(1)

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧