QT
完整的介绍QT的基础使用
哇风
欢迎大家一起来学习 c/c++ ,数据结构,嵌入式相关课程
交流qq群:499984459
展开
-
Qt开发MQTT(一) 之Qt官方Qt MQTT
概述Qt开发MQTT程序有两种方式,一个是Qt官方提供的基于MQTT的封装,一个是第三方(EMQ)开发的用于Qt调用MQTT的接口,二者使用方法大同小异,并且均提供了源码。那么,这里先来介绍第一种,如基于Qt官方提供的封装来使用MQTT。Qt官方虽然在2017年就已经提供了对MQTT的封装,但是并没有正式加入到Qt的标准库里面,所以需要自己下载源码进行编译。Qt官方介绍文档地址:https://doc.qt.io/QtMQTT/qtmqtt-index.html下载Qt官方在github上提原创 2021-07-28 14:06:03 · 468 阅读 · 0 评论 -
std:share_ptr 问题
#include <QStackWidget>#include <QLabel>#Incldue <memory>class A : public QWidget{private: std::share_prt<QStackWidget> pagestd::share_ptr<QLabel> label}这种类析构时会导致程序崩溃原创 2020-11-20 14:00:31 · 179 阅读 · 0 评论 -
删除布局管理器中的所有控件
void deleteAllitemsOfLayout(QLayout* layout){ QLayoutItem *child; while ((child = layout->takeAt(0)) != nullptr) { ///setParent为NULL,防止删除之后界面不消失 if(child->widget()) { child->widget()-&.原创 2020-11-18 17:35:43 · 243 阅读 · 0 评论 -
QRadioButton部件
简述QRadioButton部件提供了一个带有文本标签的单选框(单选按钮)。QRadioButton是一个可以切换选中(checked)或未选中(unchecked)状态的选项按钮。单选框通常呈现给用户一个“多选一”的选择。也就是说,在一组单选框中,一次只能选中一个单选框。简述 详细描述 示例 效果 源码 样式 更多参考详细描述单选框默认开启自动互斥(autoExclusive)。如果启用了自动互斥,属于同一个父部件的单选框的行为就和属于一个互斥按钮组的一样..原创 2020-11-18 10:36:51 · 248 阅读 · 0 评论 -
设置QLabel控件边框线型(QSS实现:点画线、虚线、实线、3D边框)
本文主要总结用QSS实现控件QLabel边框类型,其它任何一个控件(包括QWidget)同样可以用这种方法设置。用QSS可以设置QLabel控件边框线型,这些类型包括点画线、虚线、实线、3D边框,下面将详细介绍各种线型的实现方式。1.1设置QLabel控件边框为点画线(dotted)QLabel{border:10px dotted #242424;}1.2设置QLabel控件边框为虚线(dashed)QLabel{border:10px dashed #242424;}.原创 2020-11-12 11:19:55 · 3677 阅读 · 0 评论 -
Qt拖拽分隔线
void DragBaseBoxLayout::addWidget(QWidget* widget){ this->layout()->addWidget(widget);}void DragBaseBoxLayout::hideIndicator(Indicator i){ if (m_indicators[i]) m_indicators[i]->hide();}void DragBaseBoxLayout::showIndicator(Indicator i.原创 2020-11-05 20:40:11 · 448 阅读 · 0 评论 -
QT窗口中的拖动
QT窗口中的拖动例如:下面有两个列表框,把其中一个列表框中的一项拖动到另外一个列表框中 下面是拖动之后的图片实现思路:重新写一个myListWidget类继承于系统的QListWidget类里面重新写5个系统事件:(.h文件中)void mousePressEv...原创 2020-11-05 20:33:42 · 525 阅读 · 0 评论 -
Qt 去除未使用参数警告
Qt编译时经常出现以下警告:warning: unused parameter 'arg1' [-Wunused-parameter]warning: unused variable 'i' [-Wunused-variable]原因是由于某些函数参数或者某些变量未使用,这在程序当中有时候很正常;所以个人认为此警告意义不大,可以忽略它。方法一:在提示警告函数里面添加Q_UNUSED(arg1);方法二:(推荐)在pro工程文件结尾处使用QMAKE_CXXFLAGS。选项格式:.原创 2020-10-20 11:40:27 · 4946 阅读 · 1 评论 -
怎样获取滚动条的范围
QScrollArea有两个滚动条,以水平滚动条举例(假设其已经显示了)先看看水平滚动条是如何定义自己的滚动范围的:intimageWidth;//图像宽度intbarWidth=scrollArea->horizontalScrollBar()->width();//滚动条宽度那么滚动范围就是0~imageWidth-barWidth0是最小值,图像宽度减去水平滚动条宽度就是最大值intmax=imageWidth-barWidth;水平滚动条有个事...原创 2020-09-04 15:23:11 · 1053 阅读 · 0 评论 -
Qml学习要点记录(一)
基本类型的属性没有自己的属性改变信号,只能为基本类型自身创建一个属性改变信号处理器。例如:Text{//不可用onFont.pixelSizeChanged:doSomething()//不可用font{ onPixlSizeChanged:doSomething() }//可用onFontChanged: doSomething()}声明一个自定义的属性,会隐式地为该属性创建一个值改变信号,以及...转载 2020-06-02 01:26:14 · 162 阅读 · 0 评论 -
QMap和QHash的 key value 遍历器
QMap和QHash的遍历器,*运算符返回集合键值对。下面的代码,我们打印出QMap的所有元素:点击(此处)折叠或打开QMap<int,int>map; QMap<int,int>::const_iterator i; for(i=map.constBegin();i!=map.constEnd();++i){ qDebu...原创 2020-01-16 11:15:40 · 1888 阅读 · 0 评论 -
QT 中定时器两种使用方法
Qt中定时器的使用有两种方法,一种是使用QObject类提供的定时器,还有一种就是使用QTimer类。 其精确度一般依赖于操作系统和硬件,但一般支持20ms。下面将分别介绍两种方法来使用定时器。方法一:QObject中的定时器的使用,需要用到三个函数1、 int QObject::startTimer ( int interval ) ; 这个是...原创 2019-12-16 21:14:15 · 261 阅读 · 0 评论 -
QT线程与定时器
一、定时器QTimer类The QTimer class provides repetitive and single-shot timers.The QTimer class provides a high-level programming interface for timers. To use it, create a QTimer, connect its timeout() ...原创 2019-12-16 15:13:06 · 793 阅读 · 0 评论 -
QT编译使用Curl开源库
libcurl主要功能就是用不同的协议连接和沟通不同的服务器~也就是相当封装了的sockPHP 支持libcurl(允许你用不同的协议连接和沟通不同的服务器)。, libcurl当前支持http, https, ftp, gopher, telnet, dict, file, 和ldap 协议。libcurl同样支持HTTPS证书授权,HTTP POST, HTTP PUT, FTP 上传(当...原创 2019-11-29 14:03:37 · 1249 阅读 · 0 评论 -
Qtcreator 创建 新文件时 大小写
1:点击工具,选择选项2:左侧选择c++ 右侧点击文件名 然后倒数第二行的lower case file names勾选框去掉 ...原创 2019-11-28 10:50:07 · 2659 阅读 · 1 评论 -
Qt支持https
Qt支持https请求需要配置openssl环境,Qt默认是不支持SSl认证的,检测Qt支持的协议QNetworkAccessManager *manager = new QNetworkAccessManager(this);qDebug() << manager->supportedSchemes();返回的结果:(“ftp”, “file”, “qrc”, “h...原创 2019-11-26 20:12:34 · 513 阅读 · 0 评论 -
Qt-Android开发环境搭建
Qt-Android开发环境搭建依赖的安装包:qt-opensource-windows-x86-5.12.2 ----armv7jdk-8u212-windows-x64.exeandroid-ndk-r19c-windows-x86_64.zipinstaller_r24.4.1-windows-----android sdk:Android 9(API 28)一、安装Qt...原创 2019-11-20 16:33:00 · 230 阅读 · 0 评论 -
qt中漂亮的几款 qss 样式
Qt中漂亮的几款QSS/* === Shared === */QStackedWidget, QLabel, QPushButton, QRadioButton, QCheckBox,QGroupBox, QStatusBar, QToolButton, QComboBox, QDialog { background-color: #222222; color: #BBB...原创 2019-10-17 09:46:50 · 18442 阅读 · 3 评论 -
设置窗口背景透明
setWindowOpacity(0.9); QPixmap pixmap = QPixmap(":/Res/images/bg.png").scaled(this->size()); QPalette palette(this->palette()); palette.setBrush(QPalette::Background, QBru...原创 2019-10-16 14:04:28 · 447 阅读 · 0 评论 -
一套 qss风格界面
MainWindow,#Widget{ border-image:url(:/Res/images/bg.jpg); /*background-color:#B9B9B9;*/ color:white;}QMenuBar:item{background-color:#202340;color:white;}QMenuBar{background-co...原创 2019-10-15 12:14:59 · 840 阅读 · 1 评论 -
Qt自定义委托在QTableView中绘制控件、图片、文字
1、实现在QTableView中绘制 格式字符串Cpp代码//重载绘制函数 voidDelReconQueue::paint(QPainter*painter,constQStyleOptionViewItem&option, constQModelIndex&index)const...原创 2019-10-09 09:45:04 · 1011 阅读 · 0 评论 -
信号与槽的参数如果是自定义参数,需要注册
背景:一个线程通过signal-slot发送PVCI_CAN_OBJ类型的值到主线程中,错误提示:QObject::connect: Cannot queue arguments of type 'PVCI_CAN_OBJ'(Make sure 'PVCI_CAN_OBJ' is registered using qRegisterMetaType().)原因:在线程中通过sign...原创 2019-09-19 03:03:11 · 455 阅读 · 0 评论 -
Qt 中支持Opencv
Qt中支持Opencv 库,1.安装qt程序 包含 mingw2.安装cmake3.下载opencv源码:源码下载地址:https://github.com/opencv/opencv用cmake编译 opencv库source code 选择 opencv 源码build 处选择你编译存取路径点击configure 选择 mingw点击 Genarat...原创 2019-09-12 17:26:26 · 2674 阅读 · 0 评论