转至:http://software.intel.com/zh-cn/blogs/2011/10/31/qt-3/
分享在比赛中写代码时,发现的几个对写程序很有用的小段代码,虽小但是在我的软件中帮了我很大忙。这些代码可以在程序和软件开发中直接使用,会为你的程序开发介绍很多麻烦。仅是个人之见,如有不符之处,请拍砖。
第一段:主要的功能是解决中文显示问题,这三段有时一段即可,有时需要三段都得写。为了省事,我一般是三段一起写,我们队在软件开发中把这三段放在了main函数中。
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));实例:
int main(int argc, char *argv[])
{
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
QApplication app(argc, argv);
setup setupwindow;
setupwindow.show();
return app.exec();
}
这样在软件开发过程,和程序编写过程中几乎所有的乱码问题全部可以不用担心了,也不必在花心思去专门注意了(我在软件开发中百试百灵,只是个人经验)。
第二段:主要用来解决图片、文件等默认命名重复问题。我们队在开发中考虑用时间作为文件的默认名字,某一时刻的时间是绝对不会重复的,所以命名的文件也绝对不会重复,也绝不会发生覆盖导致文件、图片问题
实例应用:
QString str = QTime().currentTime().toString();
picname= QString(tr("IMG%1%2%3"))
.arg(QDate().currentDate().year()%100)
.arg(QDate().currentDate().month())
.arg(QDate().currentDate().day(),2)
+str.mid(0,2)+str.mid(3,2)+str.mid(6,2)+".jpg";
fileName = QFileDialog::getSaveFileName(this, tr("Save File"),
"/home/meego/Pictures/"+picname,
tr("Images (*.jpg *.png *.xpm *.jpg)"));
第三段:为软件界面设计背景图片
代码:
QPalette palette; palette.setBrush(QPalette::Background,QBrush(QPixmap(":/img/butterflynew.jpg")));
this->setPalette(palette);
只需对":/img/butterflynew.jpg" 进行简单的修改和替换即可使你的软件或程序界面变成你所想要的效果。
还有就是在软件设计时我们采用两种方式,一种是纯粹代码完成,另一种是控件的拖放加适当的代码添加。在这个过程中,我们发现在代码编写和添加中,纯粹的控件拖放可以帮我们完成很多工作。具体实现方法如下:
新建一个QT GUI Application 建完后会默认的程序组成如下图所示:
(由于网速等原因图片一直加不进来,创建时只要一直点默认的按钮即可)
我们可以在UI文件中进行控件的拖放和组装。然后点击编译,可以不用运行,但是若要看效果可以运行下。回到mainwindow.cpp看头文件会看到#include "ui_mainwindow.h"将光标放到#include "ui_mainwindow.h" 中间,然后点击F2,程序界面会跳转到ui_mainwindow.h中,在这里你可以看到你所拖动的控件如何用纯的代码去实现。这一方法,在对控件的位置定义中节省了很多时间。
以上是我在学习QT中的一点小收获小总结,有可能有失误的地方,请拍砖!
南昌大学 xluren@126.com 队名:Ncu0901 夏宝宁
分享到:
相关推荐
自己在学习QT的时候总结的一些小的技巧,都是比较实用的
qt 最基础 最详细的 layout 基本布局 源代码(2) 很适合基础薄弱的下载,学习这个之后你会对qt有很大的了解
QT,C++使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者,能够帮助你快速上手Qt...
:check_mark_button: QtCrator 使用和一些小技巧; :check_mark_button: Qt 原理/运行机制理解 自己所学记录,亦可以互相交流共享学习,有朋自远方互联网而来,不亦悦乎? 关于 QT 系列文章: 会将该系列...
竞赛资料源码-(全国物联网大赛一等奖,挑战杯铜奖)基于QT的人脸识别,定位导航,脑电心率测算,用GPRS传到服务端的疲劳驾驶检测系统 【目标受众】: 本项目适合IT相关专业各种计算机技术的源代码和项目资料,如计...
竞赛准备:适用于各种教育部认可的竞赛,如全国电子设计大赛、全国大学生智能汽车竞赛等,他们可以借助这些资料了解竞赛的规则、要求和技巧。 学习与项目开发:可以用作毕设、课设、作业和竞赛项目的开发基础,可以...
- 分享博主原创的《PyQt5开发之UI设计与美化》PPT,内容为博主近期进行PyQt开发美化工作的一个小总结,鉴于网上系统性的教程较少,希望能够帮助有... - 基于QtDesigner的UI美化知识:QSS语法、QSS设置规则、开发技巧
竞赛准备:适用于各种教育部认可的竞赛,如全国电子设计大赛、全国大学生智能汽车竞赛等,他们可以借助这些资料了解竞赛的规则、要求和技巧。 学习与项目开发:可以用作毕设、课设、作业和竞赛项目的开发基础,可以...
竞赛准备:适用于各种教育部认可的竞赛,如全国电子设计大赛、全国大学生智能汽车竞赛等,他们可以借助这些资料了解竞赛的规则、要求和技巧。 学习与项目开发:可以用作毕设、课设、作业和竞赛项目的开发基础,可以...
该代码为作者本人在2002年下半年刚开始用到Delphi时,为了尽快熟悉函数、编程环境所做,代码中可能存在一些并不合理的Delphi用法和技巧:)而且,有的地方因为偷懒,代码比较乱;代码中有冗余代码,是在不断的改写...
毕设&课设&项目&实集合go的编程技巧 分布式 数据库MySQL Linux操作系统讲解 设计模式 主流的框架设计,结构设计 【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件...
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。测试代码可运行。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者...
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。测试代码可运行。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者...
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。测试代码可运行。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者...
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...
竞赛准备:适用于各种教育部认可的竞赛,如全国电子设计大赛、全国大学生智能汽车竞赛等,他们可以借助这些资料了解竞赛的规则、要求和技巧。 学习与项目开发:可以用作毕设、课设、作业和竞赛项目的开发基础,可以...