qt 提高部分
文章平均质量分 56
比卡丘不皮
一个热爱学习与热爱分享的有志青年
展开
-
QPaintEvent 绘制控件,让你提高变成强者
相信小伙伴们好多学习qt 的一些基本用法,不知道如何继续下去学习相关东西,大部分都是看书与对应博客,还有一些例子,然后确不知道该学习什么,这里我提供一下自己的学习习惯,也许不适合你,或许你会有更好的学习方式。 如果有比较激烈的观点,我这里只想说:您对!声明:本文例子是刘典武开源项目,且征求对方同意:飞扬青云大佬博客https://blog.csdn.net/feiyangqingyun首先我是推荐飞扬青云大佬(刘典武)大佬的控件学习:控件学习https://gitee.co...原创 2021-12-15 11:50:26 · 2101 阅读 · 1 评论 -
Qt每天一个小技巧之 Q_PROPERTY 的使用
The Property System 在属性系统中,Qt提供了一个复杂的属性系统,与一些编译器供应商提供的类似。然而,作为一个独立于编译器和平台的库,Qt不依赖于非标准的编译器特性,如__property或[property]。Qt解决方案适用于Qt支持的每个平台上的任何标准c++编译器。它基于元对象系统,元对象系统也通过信号和插槽提供对象间通信。 官方给的格式: Q_PROPERTY(type name (READ getFunction ...原创 2021-12-07 05:30:28 · 4997 阅读 · 6 评论 -
qt 实现画廊展示
在完成网易云部分,要用到画廊动画,感谢公孙二狗的指导,给的简单例子,自己改写代码,完成下面效果。 其实想法很简单,就是我们使用两个Qwidget,一个是显示,一个是存放加载的资源,然后,在通过QPropertyAnimation,移动到对应的位置,就可以达到这样的基本效果。点击下载: 代码下载连接GalleryItem的布局Widget布局代码部分:主要部分:#ifndef GALLERYPRIVATE_H#define GALLERYPRIVA...原创 2021-11-04 21:13:15 · 955 阅读 · 0 评论 -
qt 实现轮播图
这个是为了编写我网易云项目中轮播图的效果,目前移动动画有点问题,后期把功能给加上。采用了QGraphicsScene 、QGraphicsView、QGraphicsPixmapItem的方式,参考了网上博主https://blog.csdn.net/h391998495979/article/details/101868838然后自己采用了map 关联了button 与 图片的连接。主要代码:#include "picturewidget.h"#include "ui_pi..原创 2021-10-29 18:26:34 · 2967 阅读 · 8 评论 -
点击QLineEdit 弹出对应窗口
qt中要写网易云的搜索框,当你点击后,会弹出对应的窗口,其实使用过滤器就可以。当点击lineEdit上就是:当然目前我这样简单写的,代码非常简单:MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); ui->lineEdit->installEventFilter(this)..原创 2021-08-26 17:59:11 · 1481 阅读 · 0 评论 -
qt编写网易云界面(1)----标题框的实现
大家都知道,在qt基本的做完后,想要对界面美化,其实在qt 使用qss 还是很好的,因为之前实习的时候做过java web ,相比网页来说还是有点差距,话不多说,先看看目标界面。哈哈,我是非常喜欢周深的,当然不知道你喜不喜欢。目前我完成:就完成自定义给的标题栏,后期有时间我会不断的完善。其中比较麻烦的就是ui,本身我不会ui设计,图标都是在网上找的,推荐给大家网站:https://www.iconfont.cn/代码核心:AllMain::AllMain(QWidget..原创 2021-08-15 23:17:30 · 6139 阅读 · 12 评论 -
建波三句话,竟让我花18分钟了解信号槽原理
那日,qt群中聊天,无聊的我说起了qt相关的基础知识。突然,群主出现,发出了斜眼笑的表情建波问道:“你知道信号与槽用的是什么原理莫”?好多小伙伴最开始都说,因该是使用了“回调函数机制”,于是我赶紧写了一段回调函数程序,以防自己忘记。#include <iostream>using namespace std;void printICY(){ cout << "icy yyds" << endl;}void printJb(){原创 2021-08-08 17:57:06 · 680 阅读 · 3 评论 -
QT 文件与注册表关联例子
相信大家经常使用点击一个文件,会自动启动对应的软件,加载对应问件的数据这样的功能,其实思路非常简单,通过注册表,加上main函数传数据,从而加载数据与打开软件,下面让我们来看看效果图。 我自定义了一个后缀名为.pkq。 其实里面就是一段话。对于这样的我们经常有.doc .ppt 等后缀名,从而打开对应的软件。 用文本文件打开后就是一段话。 那我是如何做的呢,话不多说上代码:qt,界面布局非常简单:main.cpp#include "m...原创 2021-07-14 21:30:00 · 553 阅读 · 2 评论 -
Qt每天一个小技巧之QObject::eventFilter(过滤器)事件
说好的计划,就要实现,今年我要把吹过的牛皮,设定的计划,统统给圆了。今天我们来看过滤器函数,为QObject的一个虚函数。今天使用的我们主要是3个原创 2021-05-28 14:11:58 · 1012 阅读 · 1 评论 -
Qt每天一个小技巧之QObject::event 事件
说好的计划,就要实现,今年我要把吹过的牛皮,设定的计划,统统给圆了。今天先把明天的小技巧给记录下来,明天估计比较忙,就不更新啦。打开帮助文档我们看到了event事件。我们经常使用来用于人机交互。我们先看看定义吧:virtual boolevent(QEvent *e)event函数的作用就在于事件的分发。如果想在事件的分发之前就进行一些操作,比如监听某个按键的按下。#include "widget.h"#include "ui_widget.h"#include <QK...原创 2021-05-18 17:46:17 · 643 阅读 · 0 评论 -
Qt每天一个小技巧之QObject::timerEvent 的简单使用
说好的计划,就要实现,今年我要把吹过的牛皮,设定的计划,统统给圆了。依旧打开qt的帮助文档,今天我们来看一下timerEvent的简单使用吧。今天我们来看要使用的函数吧。int startTimer(int interval, Qt::TimerType timerType = Qt::CoarseTimer) intstartTimer(std::chrono::milliseconds time, Qt::TimerType timerType = Qt::CoarseTimer)...原创 2021-05-18 11:42:04 · 798 阅读 · 0 评论 -
Qt每天一个小技巧之QObject 对应的小知识点
说好的计划,就要实现,今年我要把吹过的牛皮,设定的计划,统统给圆了。今天我打算把qt中QObject一些小知识点都给写出来,这些都是基本的用法,后面就开始给大家写事件、过滤器、时间、还有线程。1. QObject: :inherits(const char *className)函数判断一个对象实例是否是名称为 className 的类或 QObject 的子类的实例void MainWindow::testInherits(){ QTimer *timer = new QTim..原创 2021-05-17 11:09:50 · 358 阅读 · 0 评论 -
Qt每天一个小技巧之setProperty 设置属性功能
说好的计划,就要实现,今年我要把吹过的牛皮,设定的计划,统统给圆了。打开Qt帮助文档,我们接着看到了这个函数:QList<QByteArray> dynamicPropertyNames() const这个函数的目的就是获取到动态属性的名字,那我们相关运用到上面是那些呢。与其相关联就是下面函数了:QVariant property(const char *name) constbool setProperty(const char *name, const QVari原创 2021-05-14 15:18:18 · 20804 阅读 · 0 评论 -
Qt每天一个小技巧之QObject 槽函数相关
说好的计划,就要实现,今年我要把吹过的牛皮,设定的计划,统统给圆了。我们今天继续打开帮助文档,查看我们今天的小技巧。我们可以看到今天,我们了解一下槽函数的一个小技巧吧。这个槽函数部分相信大家是经常使用的部分啦,也算是qt的一个特色,今天就简单的记录一下我们常用的部分,如果大家有更好的用法,请大家多多指出来。connect槽函数链接,重载...原创 2021-05-13 15:21:21 · 1164 阅读 · 0 评论 -
Qt每天一个小技巧之QObject ::children 以及对应findChildren
说好的计划,就要实现,今年我要把吹过的牛皮,设定的计划,统统给圆了。打开Qt帮助文档,下个小技巧就是children函数啦。与children对应的还有findChild、findChildren等函数,今天就带大家一起来记录这个小技巧。QObject以对象树的形式组织起来。当为一个对象创建子对象时,子对象会自动地添加到父对象的children()列表中。父对象拥有子对象的所有权,比如父对象可以在自己的析构函数中删除它的孩子对象。使用findChild()或findChildren...原创 2021-05-11 13:36:07 · 6274 阅读 · 5 评论 -
Qt每天一个小技巧之QObject ::blockSignals(信号阻塞)
说好的计划,就要实现,今年我要把吹过的牛皮,设定的计划,统统给圆了。 qt文档读写第一步,如下图,给了我们blockSignal 这个函数。字体意思就是信号阻塞。我们继续点看具体内容。Qt描述:阻塞模式下,这个对象发送的信号都会被阻塞,解除阻塞后则不再阻塞。返回值为之前状态的阻塞情况。看到这里,很多小伙伴可能跟我一样,这个函数有啥用呢,或者运用在什么方面呢,一般阻塞是为了防止出现死循环,或者等待别的完成后在执行。我突然想到以前的一个问题: 如下图,当我...原创 2021-05-10 11:31:46 · 4095 阅读 · 3 评论 -
一个例子让你学会 Qt QlineEdit 自动补全功能
每天一个小技巧,相信很多小伙伴希望自己的文本框中有自动补全的功能,一下是总结的一些例子,希望大家喜欢。使用自动补全呢需要 QCompleter 类,它可以结合QlineEdit 与 QComboBox,我们可以看到官方例子写法:功能1:对应代码: QStringList wordlist; wordlist<< "吉法师" <<"龚建波" << "小鱼人" <<"小小"<< "吉吉" <<...原创 2021-03-24 13:55:07 · 1560 阅读 · 0 评论 -
Qt读取Json文件
读取Json文件其实很简单的,下面我们简单的看看。准备一个json文件:{ "name" : "比卡丘不皮", "Message": { "getFirst":[ { "first" : "hello" }, { "second" : "world"} ] }, "json": 100}对应代码:#include <QCoreApplication>#include <QDebug原创 2020-08-31 14:47:51 · 2335 阅读 · 0 评论 -
QT读写Excel表格记录
本文章使用的是QAxObject 类来进行的对excel表格的读取。首先当我们建立一个工程后,我们常在.pro文件里加上:CONFIG += qaxcontainer当加入后qt出了一个提示:Project WARNING: CONFIG+=qaxcontainer is deprecated. Use QT+=axcontainer instead.表明CONFIG += qaxcontainer 被弃用了,让你用QT+=axcontainer来代替。不过也是个警告,大家选取...原创 2020-08-25 17:47:07 · 1704 阅读 · 0 评论 -
QT读写XML文件(QXmlStreamWriter 与 QXmlStreamReader)
小伙伴们今天教大家使用QT读取XML文件,对于qt有很多种方式读取xml,本章使用QXmlStreamWriter ,与QXmlStreamReader来读取下面xml文件。<?xml version="1.0" encoding="UTF-8"?><DATA> <SMS> <name>吉法师</name> <phone>188XXXXXXXXXX</phone>...原创 2020-08-24 17:16:28 · 3079 阅读 · 0 评论 -
QT连接MySql简单的例子
之前写了一个Qt连接SQlite数据库的完整例子,有些小伙伴问了一些那Mysql,或者其他数据库如何连接呢。传送门:qt连接sqlite完整例子首先,你电脑上应该安装了MySql软件了吧,不像sqlite,qt是自己带的一些sqlite的接口,因此你不用安装。如果你电脑没有安装的话,先去安装个mysql吧。本人安装的是mysql5.7,使用的是MySql workbench可视化的界面。安装后记得要环境配置,qt连接后需要的是libmysql.dll 这个文件,两种方式:第一种找到你的.原创 2020-08-05 15:02:46 · 941 阅读 · 1 评论 -
Qt 编程 keySight 34401A 万用表(串口232编程)
最近编写一个读取keySight 34401A 万用表的一个程序,使得每秒读取一个电压值,然后记录电压值到文本中去,也许对你来说,这还不简单吗? 通过232读取数据而已,很简单的呀,可能对于我这刚接触这个机器,而且最初没有任何资料的我来说算是一个小挑战吧。 实物如下图:这个万用表一般有两种方式的编程,一种是GPIB 另一种是RS-232,这里使用的232编程,有关GPIB大家可以尝试一下。首先我们要配置下这个万用表主要是:点击shift,...原创 2020-06-17 17:50:16 · 8360 阅读 · 12 评论 -
Qt 按钮与选项卡关联实例(主要是qss使用)
话不多说,先上图吧:基本上实现了这个功能,这个是书籍:Qt5C++GUIProgrammingCookbook 书中的第二个小例子,我只是添加了一个点击按钮可以切换tabWidget的功能。估计很多人会说,这不是一个非常简单的例子吗,没啥特别的,界面也不好看,反正你一定会吐槽的。其实你多了解看看一下很多程序都是这个模式,比如: 图中是不是很熟悉呀,点击一个按钮,达到不同的界面,实现界面的切换,只是这个例子没有贴好看的图,图贴的好,那就是焕然一新了 ,据这个例子呢...原创 2020-06-12 15:35:31 · 1592 阅读 · 6 评论 -
qt 之 QSystemTrayIcon(托盘程序整个例子)
小伙伴们会经常遇到一些托盘程序,有些程序关闭后,程序并没有退出,而是放入了托盘中,如下图: 那qt是如何实现这样的办法呢,其实就是用到了QSystemTrayIcon类,通常有两种方法去写,第一种比较简单,直接利用QSystemTrayIcon ,来达到一些基本的托盘程序,也是本文章要讲的。第二种是继承QSystemTrayIcon类,这样子类设计可以使得托盘程序更加功能强大,接下来给大家讲解简单的托盘: 托盘也出现了程序:...原创 2020-06-11 21:53:29 · 7400 阅读 · 3 评论