免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 12562 | 回复: 8
打印 上一主题 下一主题

Qt中文乱码 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-08 01:00 |只看该作者 |倒序浏览

  1. filedialog = QtGui.QFileDialog(self)
  2.         selected = QtCore.QString()
  3.         path = QtGui.QFileDialog.getOpenFileName(filedialog,'对话框' ,  '.  ', '(*.*)', selected)
复制代码

utf-8 编码

出来的   "对话框"这三个字为乱码

linux 环境 python2.5+qt4.3+PyQt4.2

请高手指教

论坛徽章:
0
2 [报告]
发表于 2007-06-08 11:53 |只看该作者
1. 使用 self.tr("对话框")

2. 用 QApplication 的 setDefaultCodec  方法设置编码方式。

论坛徽章:
0
3 [报告]
发表于 2007-06-09 03:55 |只看该作者
非常感激斑竹的回复
但是我还是有点不截
可否麻烦斑竹 写出具体实现的代码呢?
不胜感激

论坛徽章:
0
4 [报告]
发表于 2007-07-05 15:01 |只看该作者
原帖由 jihuaneva 于 2007-6-9 03:55 发表
非常感激斑竹的回复
但是我还是有点不截
可否麻烦斑竹 写出具体实现的代码呢?
不胜感激


在你的main函数的开始部分加上类似的代码(假设你的QApplication 的实例是app):
  1. QTextCodec *my_codec = QTextCodec::codecForName( "GBK");
  2.     QFont l_font("Fangsong Ti");
  3.     #ifdef WIN32
  4.     l_font.setFamily( "宋体");
  5.         l_font.setPointSize(9);
  6.     #else
  7.         l_font.setFamily( "Song");
  8.         l_font.setPointSize(12);
  9.     #endif
  10.     app.setDefaultCodec(my_codec);
  11.     app.setFont( l_font );
复制代码

上面设置了编码和字体

[ 本帖最后由 whyglinux 于 2007-7-5 22:25 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2007-07-05 22:23 |只看该作者
To 氧气瓶儿

感谢你的参与。我编辑了你的回复,以避免代码部分出现的“花脸”问题。以后请注意把程序代码部分用"[ code ]"和"[ /code ]"括起来。

论坛徽章:
0
6 [报告]
发表于 2007-07-08 22:29 |只看该作者
你的系统是什么,我自己是FC,一直到FC6 都有这问题,应该是兼容的问题吧, QT自己的designer中文也有问题,
FC7 现在OK了,就是太难看了,好像是楷书

论坛徽章:
0
7 [报告]
发表于 2007-07-10 10:39 |只看该作者
原帖由 whyglinux 于 2007-7-5 22:23 发表
To 氧气瓶儿

感谢你的参与。我编辑了你的回复,以避免代码部分出现的“花脸”问题。以后请注意把程序代码部分用"[ code ]"和"[ /code ]"括起来。

  谢谢老大指点
以后记得用code标签了

论坛徽章:
0
8 [报告]
发表于 2008-05-24 16:51 |只看该作者
QApplication没有setDefaultCodec()这个方法啊。

论坛徽章:
0
9 [报告]
发表于 2008-05-24 17:09 |只看该作者
对于Qt4.3.2,假设你的源文件是utf8编码的,这样弄:
#include <QTextCodec>

QTextCodec * BianMa = QTextCodec::codecForName ( "utf8" );
textLabel1->setText(BianMa->toUnicode("我爱妳!"));
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP