Qt
卧_听风雨
这个作者很懒,什么都没留下…
展开
-
Qt中QLayout的用法(QGridLayout, QFormLayout, QStackedLayout)
Qt 的各种QLayout布局用法原创 2022-09-01 17:58:53 · 554 阅读 · 0 评论 -
VS2019新建页面找不到Qt项目解决方法
VS2019新建页面找不到Qt项目原创 2022-08-31 15:03:36 · 1823 阅读 · 0 评论 -
VS2019 + Qt + VTK配置过程
VS + Qt + VTK原创 2022-08-21 10:30:17 · 565 阅读 · 0 评论 -
Qt QUrl通信时ProtocolUnknownError
Qt在做Ftp进行文件上传,下载时,会出现单独设置端口号不生效的情况,弹窗ProtocolUnknownError错误信息原创 2022-06-02 17:31:13 · 1820 阅读 · 0 评论 -
Qt如何生成license文件
license文件生成过程:加密,解密,硬件绑定原创 2022-05-09 18:54:08 · 3244 阅读 · 1 评论 -
Qt 实现简单的离线程序自动更新
Qt软件离线更新,简单实现原创 2022-05-09 17:53:51 · 1485 阅读 · 0 评论 -
Qt 如何获取本机ip地址
QString myClient::getMyIpString(){ QString ip_address; QList<QHostAddress> ipAddressesList = QNetworkInterface::allAddresses(); // 获取所有ip for (int i = 0; i < ipAddressesList.size(); ++i) { QHostAddress ipAddr = ip原创 2022-04-19 13:54:06 · 4476 阅读 · 1 评论 -
char*与QString 相互转换
char * 转 QString char str[50] = "this is string"; QString qs = QString(str);// 利用QString 的构造函数QString 转 char * QString qs = "this is string" ; char* ps = qs.toLatin1().data();// 先 qs.toLatin1()转为 QByteArry原创 2021-06-21 15:10:47 · 8718 阅读 · 0 评论 -
Qt如何解决自定义的QWidget子类添加到父类后StyleSheet失效问题
一,问题描述自定义一个继承自QWidget的类。该类在UI中,或者在构造函数中设置了StyleSheet属性,当在父类中使用该类时,设置好的StyleSheet无法生效。定义:myChild::myChild(QWidget *parent) : QWidget(parent){ ui.setupUi(this); int width = 20; int heith = 20; setStyleSheet("background:rgb(0,0,255)"); m_Pressed =原创 2021-06-10 17:40:44 · 1232 阅读 · 0 评论 -
Qt如何实现按住Ctrl键,点击QSpinBox成倍加减
需求有时候,一个QSpinBox,点击上下加减,进行输入值调节时候,一直一个小步长,调节太慢,一直一个大步长,调节又太粗糙。因此,就需要做一个快捷方式:比如,按住ctrl键,调节步长变大,松开ctrl键,调节步长恢复原小步长。其实,最好的是重写QSpinBox类。下面讲一下,简单实现。实现结果:实现原理:1.捕捉键盘事件;2.在ctrl按键按下时,改变QSpinBox的步长。xxx.h文件:#ifndef TESTSPINBOX_H#define TESTSPINBOX_H#inc原创 2020-06-01 17:22:54 · 1195 阅读 · 0 评论 -
Qt+ VS实现多输入框键盘回车响应事件
在通信界面经常出现,一个ui里面,有很多输入框,按下回车后,如何确定是刚刚输入的那个输入框的值发生了改变呢。首先获取当前光标位置QWidget* fw = QApplication::focusWidget();重写键盘事件xxx.h中:protected: virtual void keyPressEvent(QKeyEvent* evt);xxx.cpp中:构造函数添加:...原创 2020-03-24 15:30:55 · 1173 阅读 · 0 评论 -
VS + Qt环境下解决中文乱码问题
中文乱码问题VS + Qt环境下,正常输出中文,会出现乱码问题,这是VS与操作系统的编码字符集的问题。例如:setWindowTitle("中文窗口");出现:解决方法:a,如果,在需要输出的中文的地方比较少,可以使用:setWindowTitle(QString::fromLocal8Bit("中文窗口"));//或者setWindowTitle(QStringLitera...原创 2020-03-18 15:35:39 · 10371 阅读 · 5 评论 -
VS+Qt 如何实现自定义菜单栏
功能界面自定义菜单栏实现mymenu.h定义槽函数:private slots:void on_actionOpen_triggered();void on_actionSave_triggered();void on_actionExit_triggered();void on_actionMain_triggered();void on_actionWarmUp_trigg...原创 2020-03-06 16:52:40 · 1908 阅读 · 0 评论 -
Qt给定时器开线程及多线程下不同connect连接类型的分析
功能显示界面Qt给定时器开线程定义定时器和子线程timerthread.h中:class TimerThread : public QMainWindow{ Q_OBJECTpublic: TimerThread(QWidget *parent = 0); ~TimerThread();private slots: void on_btnStart_clicked();...原创 2020-03-02 15:55:15 · 930 阅读 · 1 评论 -
Qt中QList用法
QList常用函数public函数void append(const T &value)// 从尾部添加void append(const QList<T> &value)// 从尾部添加const T &at(int i) ||T value(int i) constconst T &back()T &first()T ...原创 2020-02-26 17:45:44 · 3784 阅读 · 0 评论 -
Qt利用信号量QSemaphore实现生产者,消费者模式
项目新建在VS2013里面新建一个Qt的控制台应用程序,添加main.cpp定义两个信号量#include <QObject>#include <QtCore/QCoreApplication>#include <QSemaphore>#include <QThread>#include <iostream>const ...原创 2020-02-24 10:26:22 · 774 阅读 · 0 评论 -
QMediaPlayer实现视频播放器功能
一、视频播放器功能一共实现了14种播放功能:具体Demo:https://download.csdn.net/download/birenxiaofeigg/12131852二、代码一览:三,部分代码显示// 设置总时长void mMediaPlayer::onDurationChanged(qint64 dut){ ui.hsldVideo->setRange(0, d...原创 2020-02-03 14:30:10 · 2153 阅读 · 7 评论 -
VS + Qt如何发布release版本,打包依赖的所有***.dll库
一、生成xxx.exe文件运行环境,切换到Release,并运行,生成xxx.exe文件;二、用Qt内置工具打包所有平台文件及***.dll文件原创 2020-02-03 12:56:26 · 2366 阅读 · 0 评论 -
Visual Studio如何查看自己xxx.exe程序依赖的所有动态链接库*.dll
一,找到自己VS版本的命令工具右键单击vs快捷方式——>更多——>打开文件位置:如图——>双击“Visual Studio Tools”快捷方式;——>双击“VS2013 x64 本机工具命令提示”(具体根据自己系统版本,自己选择)如图所示:二、输入命令,查看所依赖的所有**.dll库a, 复制自己xxx.exe的文件路径;如图:b, 输入指令并回车:...原创 2020-02-03 12:13:36 · 5494 阅读 · 0 评论 -
DirectShowPlayerService::doRender: Unresolved error code 80040266
解决方案:https://blog.csdn.net/birenxiaofeigg/article/details/104129207原创 2020-02-01 09:33:19 · 1386 阅读 · 1 评论 -
QMediaPlayer视频没有画面显示,或播放卡顿问题解决
错误提示DirectShowPlayerService::doRender: Unresolved error code 80040266原因Qt 中的多媒体播放,底层是使用DirectShowPlayerService,所以安装一个DirectShow解码器,例如LAV Filters,或者k-lite解码器,就可以解决运行出错问题解决:Lav Filters:https://git...原创 2020-01-31 23:08:56 · 8371 阅读 · 7 评论 -
Qt实现双击可编辑的QLabel,输入文本后回车确定
功能环境:VS2013 + Qt5.8在一个QLabel标签上,双击,对文本进行编辑,按下回车或者Esc,退出编辑状态,或者任意点击其他地方,退出Focus,退出编辑状态代码实现思路:通过stackedWidget,安装installFilter(),进行事件判断。 myLabelEdit::myLabelEdit(QWidget *parent) : QMainWindow(pare...原创 2020-01-16 11:28:38 · 7306 阅读 · 1 评论 -
Qt在QLabel上实现视频播放器,带快进和进度条拖动功能
功能界面:开发环境:Qt5.8 + VS2013 + opencv3.1.0Demo 下载:https://download.csdn.net/download/birenxiaofeigg/12089199头文件包含#include <qfiledialog.h>#include <QTimer>#include <qpixmap.h>#in...原创 2020-01-09 11:04:00 · 8320 阅读 · 1 评论 -
Qt利用avilib实现录屏功能,生成avi文件
环境:Qt + vs2013 + avilibdemo下载:https://download.csdn.net/download/birenxiaofeigg/12087607界面开始录制:结束录制:新建.avi文件AVI_open_output_file(char* filename);//打开avi文件,不存在,即创建设置视频参数void AVI_set_video(a...原创 2020-01-09 10:43:45 · 2891 阅读 · 5 评论 -
Qt + VS2013利用Opencv实现视频播放器功能
功能实现:1.弹窗,手动选择打开视频文件;2.视频播放,3.视频播放暂停,继续播放4.快进;5.截图demo下载:https://download.csdn.net/download/birenxiaofeigg/12089199头文件包含:#include <QLabel>#include <qtimer.h>#include <QFileDia...原创 2020-01-08 15:13:45 · 1037 阅读 · 0 评论 -
如何让图片自适应QLabel的尺寸
ui.label->setPixmap(map)在Ui中,QLabel做好布局后,在软件里,如果使用ui.label->setPixmap(map)整个窗口的布局会打乱,以适应map大小让图片自适应QLabel只需要四句话: ui.labelShow->setMinimumSize(ui.labelShow->size()); pixmap.scaled(u...原创 2020-01-07 10:57:18 · 1739 阅读 · 0 评论 -
Qt+visual studio环境下FFmpeg环境配置
FFmpeg介绍、下载、说明 FFmpeg是领先的多媒体框架,提供了音视频的编码,解码,转码,封装,解封装,流,滤镜(滤波器),播放等功能。 它几乎支持所有的音视频格式,不管是标准委员会,社区,还是公司设计的。 它是高度可移植,跨平台的:可以在Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris等系统上, 在各种不同的编译环境,机器架构...原创 2020-01-02 10:19:02 · 317 阅读 · 1 评论 -
Qt——获取指定文件夹下的所有文件及指定文件夹下的所有文件夹
头文件包含#include <QFileDialog>代码实现获取指定文件夹下的所有文件(*.tiff *.tif): mFolderPath = QFileDialog::getExistingDirectory(NULL, "Open Folder", "F:\\FocusImgs\\imgs\\a1"); if (mFolderPath.isEmpty()) re...原创 2019-12-30 16:47:19 · 14324 阅读 · 0 评论 -
Qt各种颜色名称及CSS对照表
css颜色代码对照参见:https://blog.csdn.net/zy_heu/article/details/78952173转载 2019-12-13 17:43:49 · 5600 阅读 · 0 评论 -
Qt线程QThread开启和安全退出,QMutex线程加锁
1、线程开启Qt中,开启子线程,一般有两种方法:a, 定义工作类worker:worker继承 QThread, 重写run函数,在主线程中实例化worker,把耗时工作放进worker的run函数中完成,结束后,往主线程中发信号,传递参数即可。注意:此worker的实例,只有run函数在子线程中执行,worker的其他函数,均在主线程中执行。b, 定义工作类worker:worker...原创 2019-11-07 11:24:07 · 7945 阅读 · 0 评论 -
C++与Qt实现设计模式——单例化
单例化实现:1、私有化构造函数;2、静态化私有指针变量;3、建立静态public指针函数;4、静态变量初始化。例如:xxx.h函数定义如下:class myTest : public QObject{ Q_OBJECTpublic: static myTest* getInstance()// 静态指针函数 { static QMutex ss; static QM...原创 2019-11-06 18:03:29 · 242 阅读 · 0 评论 -
Qt窗口最大化/最小化/窗口状态判断
QT 中有一个函数:void QWidget::setWindowState ( Qt::WindowStateswindowState )这样的函数,通过它可以设置窗体的初始状态,Qt::WindowStates 一共有下面几种状态:有了这个就非常easy 了,想让窗体最大化,只需要setWindowState(Qt::WindowMaximized);就行了...原创 2019-10-21 17:21:00 · 9097 阅读 · 1 评论 -
VS2013无法打开并识别xxx.props属性表(以opencv为例),提示import声明路径问题解决办法
VS2013无法打开并识别xxx.props属性表一、修改xxx.props内include内包含路径二、修改xxx.vcxproj内xxx.props路径一、修改xxx.props内include内包含路径 记事本打开 xxx.props文件,找到opencv包含路径,更改为自己opencv安装路径二、修改xxx.vcxproj内xxx.props路径以记事本打开xxx.vcxpro...原创 2019-10-14 10:41:48 · 470 阅读 · 0 评论 -
QT如何自定义鼠标样式及如何用windows自带画图工具进行鼠标样式的设计
众所周知,QT系统自身拥有众多的鼠标样式,这些鼠标样式均比较常见,颜色、样式为系统所固有,无法更改。哪么能不能自定义鼠标的形状、颜色等特点呢?答案是可以的。自定义的鼠标样式可以随意指定,颜色更是多种多样,极具个性化。QT自带的鼠标样式(在此不做过多介绍):可以直接拿来用,具体用法如下:this-&gt;pushbutton-&gt;setCursor(Qt::ArrowCursor);t...原创 2018-10-16 16:01:29 · 2572 阅读 · 0 评论 -
Qt信号槽机制对传输参数上的局限性
信号与槽机制是比较灵活的,但有些局限性我们必须了解,这样在实际的使用过程中做到有的放矢,避免产生一些错误。下面就介绍一下这方面的情况。1.信号与槽的效率是非常高的,但是同真正的回调函数比较起来,由于增加了灵活性,因此在速度上还是有所损失。当然这种损失相对来说是比较小的,通过在一台i586-133的机器上测试是10微秒(运行Linux),可见这种机制所提供的简洁性、灵活性还是值得的。但如果我们要...原创 2018-10-17 15:31:34 · 951 阅读 · 0 评论 -
Qt与C++如何测试程序运行时间,精度高低
程序运行时间是编程的一项重要指标,在QT中如何测算程序的运行时间呢?测试函数:#include <math.h> void function() { unsigned int i,j; double y; for(i=0;i<1000;i++) for(j=0;j<1000;j++) ...原创 2019-01-18 10:06:36 · 845 阅读 · 0 评论 -
QT精确延时定时函数
第一部分:关于sleep函数,我们先来看一下他的作用:sleep函数是使调用sleep函数的线程休眠,线程主动放弃时间片。当经过指定的时间间隔后,再启动线程,继续执行代码。sleep函数并不能起到定时的作用,主要作用是延时。在一些多线程中可能会看到sleep(0);其主要目的是让出时间片。sleep函数的精度非常低,当系统越繁忙的时候它精度也就越低,有时候我们休眠1秒,可能3秒后才能继续执行...原创 2019-01-09 11:12:22 · 9674 阅读 · 1 评论 -
Qt在ui中批量操作同一类widget方法
1、不按顺序QList<QRadioButton*>rbtList = this->findChildren<QRadioButton*>();// 或者 QList<QRadioButton*>rbtList = ui.groupBox1->findChildren<QRadioButton*>();然后: foreach (...原创 2019-02-11 09:50:27 · 713 阅读 · 0 评论 -
C++与Qt环境下串口开发调试
最近项目需要,针对VS2013 + Qt环境下,进行串口通讯。研究了一下,先简单做了个demo测试一下,Qt下串口是否好使。不多说,上代码://查找可用串口 foreach(const QSerialPortInfo &amp;info, QSerialPortInfo::availablePorts()) { QSerialPort serial; serial.setPort(...原创 2019-03-01 17:47:24 · 1153 阅读 · 0 评论 -
QT配置文件.ini文件的读写操作
QT配置文件.ini文件的读写操作头文件.hini文件的写操作ini文件的读操作头文件.h#include <QSettings> //读写ini文件ini文件(即Initialization file):这种类型的文件中通常存放的是一个程序的初始化信息。ini文件由若干个节(Section)组成,每个Section由若干键(Key)组成,每个Key可以赋相应的值。ini文...原创 2019-05-10 16:44:58 · 713 阅读 · 0 评论