• 7502阅读
  • 7回复

qt 4.6 中文 块状 [复制链接]

上一主题 下一主题
离线thmono
 
只看楼主 倒序阅读 楼主  发表于: 2009-11-16
如下图所示
源码为
int main(int argc, char* argv[])
27 {
28
29         QApplication app(argc, argv);
30         QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));
31 //QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));
32         QWidget* pWidget = new QWidget;
33         QLabel label(pWidget);
34 //label.setText(QString::fromUtf8("同一个世界,同一个梦想!"));
35         label.setText(QObject::tr("同一个世界,同一个梦想!"));
36         QPushButton* btn = new QPushButton(QObject::tr("关闭"), pWidget)    ;
37         QVBoxLayout* layout = new QVBoxLayout;
38         layout->addWidget(&label);
39         layout->addWidget(btn);
40         pWidget->setLayout(layout);
41         QObject::connect(btn, SIGNAL(clicked()), pWidget, SLOT(close()))    ;
42         pWidget->show();
43         return app.exec();
44 }


不知道是不是还有什么地方要修改一下 请高手指点一下  BAIDU过 没找到好的解决方法
离线dbzhang800

只看该作者 1楼 发表于: 2009-11-17
最好的解决方案是 代码中不要出现中文
离线thmono
只看该作者 2楼 发表于: 2009-11-17
那界面中的中文放到哪里
我用Ubuntu 的APT-GET  安装的QT段代码运行是没有乱码的
但是这个QT的版本不高
我自己下载最新的QT编译安装中文就出现乱码
离线xtfllbl

只看该作者 3楼 发表于: 2009-11-17
翻译成英文界面吧,对你,对他人都有好处
上海欢迎您
离线wd007

只看该作者 4楼 发表于: 2009-11-17
楼上几位有道理。

我觉得一是使用国际化的方法来处理中文,即代码中最好不要出现中文。
二是你的Ubuntu的中文环境可能还不够完全,可以查找一下与i18n以及带zh-cn的包,试试安装上去。
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线stklv

只看该作者 5楼 发表于: 2009-11-21
试试看用QString::fromLocal8Bit("同一个世界,同一个梦想!");
离线phymal

只看该作者 6楼 发表于: 2010-03-09
引用第5楼stklv于2009-11-21 17:24发表的  :
试试看用QString::fromLocal8Bit("同一个世界,同一个梦想!");

谢谢!问题解决!
离线shiyutang
只看该作者 7楼 发表于: 2010-03-09
你的文件是ANSI编码的。你用编辑器转换成UTF-8编码就可以了。现在不建议再用ANSI编码。QString::fromLocal8Bit不是个好办法。
快速回复
限100 字节
 
上一个 下一个