这几天在倒腾QT5 ,感概颇多,和VisualStudio比较,初步发现这些优点:
1、界面的组织更方便;
2、控件创建和调用更方便;
3、动态的控件创建能力;
4、类间可以灵活使用自定义信号和槽通信;
5、灵活的界面风格替换能力;
6、跨平台使用;
7、...
在编写代码过程中发现一个问题,如以下代码:
QString ss;
ss.append("当前采集进度:");
编译后提示有回车符,根本没有!
把冒号去掉,编译通过。从显示情况看应该是中文字符的冒号引发的问题,也就是编码的问题。
直接赋值看看:
label_progress=new QLabel();
label_progress->setText(QString(tr("当前采集进度:")));//Current collection progress:")));
编译后界面显示出一些乱符。
改成英文字串:Current collection progress:
编译,没有问题。
搞了很久,没解决。
突然想到不是QT还有国际化支持吗?
没想到使用国际化支持就解决了,不用计较头大的编码问题了。