Qt
文章平均质量分 58
振长策而御宇内
一只在编程海洋中遨游的小虾米
展开
-
Qt Creator中常用快捷键
F1 查看帮助F2 跳转到函数定义(和Ctrl+鼠标左键一样的效果)Shift+F2 声明和定义之间切换F4 头文件和源文件之间切换Ctrl+1 欢迎模式Ctrl+2 编辑模式Ctrl+3 调试模式Ctrl+4 项目设置模式Ctrl+5 帮助模式原创 2013-11-11 10:38:04 · 5317 阅读 · 0 评论 -
QT编程之——使用全局变量
在Qt中使用全局变量的实例1.首先需要在一个头文件中对全局了变量使用exern方法进行定义。//g.hextern char *testStr;2.只能在cpp文件中对其是实例化,并且实例化只能在函数的外部进行。建议在包含main函数的cpp文件中进行实例化,这样可以确保在其他文件中使用时,它已经被实例化。//a.h#include "g.h"char *testStr=原创 2014-05-19 08:35:54 · 16285 阅读 · 1 评论 -
QT错误之——collect2:ld returned 1 exit status
通过自己的错误积累和网上的相关资料,简单的总结了一下出现这种错误常见的情况:1.编译成功的例子在后台执行,有时一闪而过,如果再次build ,则会提示上述错误。解决方法:打开任务管理器,找到相应的exe进程,关闭即可; 或者直接关闭QtCreator。2.没有编译成功的情况下,最常见情况是程序本身需要include的头文件被遗漏了解决方法:细心查找基类所用的头文件原创 2014-05-19 16:10:05 · 8522 阅读 · 2 评论 -
Qt编程获取鼠标移动事件
想做下面一个效果:想当鼠标移动到按钮上的时候,按钮就变大,图标换个大的,鼠标不在按钮上的时候,按钮就变小,图标也换成小的,感觉比较Cool实现原理:为每个按钮设置监听属性void MainHomeForm::init(){ //为按钮注册事件 ui->SystemSetButton->installEventFilter(this); ui->ZoneSe原创 2014-05-12 10:43:09 · 8357 阅读 · 1 评论 -
给QT程序的EXE添加图标
问:要想让Qt程序的Debug和Release版本的exe都有图标,总共分几步?答:总共分三步,客官看好,千万别眨眼!第一步:在项目文件夹目录下创建文件app.rc,把从网上down下来的叫做tubiao.ico的图标也Copy进来在app.rc里面写上这么一段话:IDI_ICON1 ICON DISCARDABLE "tubiao.ico"第二步:打开Qt Creator,把这两个文原创 2014-03-06 10:06:25 · 2343 阅读 · 0 评论 -
Qt实现屏保功能,鼠标一定时间无响应程序进入待机状态
最近使用Qt实现类似与屏保的功能,当鼠标在一定时间内一直停留在一个位置的时候,程序会自动切入到其他界面(用于显示一些信息),当鼠标移动的时候,屏幕切换回来,效果类似于屏幕保护。实现想法如下:想法一:继承QApplication类,重载bool Application::notify(QObject *obj, QEvent *e)函数,获取QEvent,如果是鼠标移动事原创 2014-01-09 16:54:19 · 11021 阅读 · 7 评论 -
Qt Socket简单通信
最近要用到Qt的Socket部分,网上关于这部分的资料都比较复杂,我在这总结一下,把Socket的主要部分提取出来,实现TCP和UDP的简单通信。1.UDP通信UDP没有特定的server端和client端,简单来说就是向特定的ip发送报文,因此我把它分为发送端和接收端。注意:在.pro文件中要添加QT += network,否则无法使用Qt的网络功能。1.1.UDP发转载 2014-01-02 09:38:39 · 1792 阅读 · 0 评论 -
设置QFrame的背景图片并不影响其子控件的效果
项目建立完成后:右键点你的项目 “Add New”->"QT Resource file" 生成一个qrc文件 然后双击它 点add 然后Add Prefix 再Add file 完事之后build一下 在你的ui上点右键 ->Change StyleSheet ->add Resource ->backgroud-image 顺着往下点 就能看见你在qrc里添加的那张图转载 2013-12-16 10:45:11 · 14676 阅读 · 0 评论 -
QT中QMessageBox设计选择框
使用QMessageBox制作选择按钮,代码如下:#include "QMessageBox" QMessageBox msgBox; msgBox.setText("The document has been modified."); msgBox.setInformativeText("Do you want to save your changes?");原创 2013-12-04 16:55:51 · 2705 阅读 · 0 评论 -
Qt重写默认构造函数
QT中默认的构造函数定义如下:#include "NetServerThread.h"class Network : public QObject{ Q_OBJECTpublic: Network(QObject *parent = 0); //因为QObject *parent为默认参数已经赋值,所以此构造原创 2013-12-04 08:56:41 · 5236 阅读 · 0 评论 -
QT技术应用_2D绘图(转)
http://www.rosoo.net/a/201102/10900.html 2D绘图 Qt4中的2D绘图部分称为Arthur绘图系统.它由3个类支撑整个框架,QPainter,QPainterDevice和QPainterEngine.QPainter用来执行具体的绘图相关操作如画点,画线,填充,变换,alpha通道等。QPainterDevice是QPaint转载 2013-11-14 14:37:11 · 1665 阅读 · 0 评论 -
Qt 中获取Calendar的值,并转成想要的格式
今天使用Qt中的Calendar控件,想获取所选日期的日期值,怎奈资料太少,最后找到解决办法。 使用Calendar的selectedDate()获取选择的日期QDate类型,然后转换成QString就行了,在toSring中写自己希望转换的格式。 注:格式中y要小写。 代码如下: QString date = ui->calendarDate->selec原创 2013-11-13 16:55:42 · 2117 阅读 · 0 评论 -
QT中使用Event Filter监听按钮事件,Release后按钮不见
问题RT,在程序中我使用了QT的监听事件,监听鼠标的位置,如果鼠标在按钮上就改变按钮的ICON,但是在Release版本中(Debug版本没问题),这些被监听的按钮都看不见了,于是开始了寻找答案的道路。闲话少叙,直接上码:void MainHomeForm::init(){ //为按钮注册事件 ui->SystemSetButton->installEventFilter原创 2014-05-27 14:32:11 · 3089 阅读 · 0 评论