序言 本教程《Qt编程指南》主要是写给Qt开发新手看的,当然前提必须学会C++,推荐《C++ Primer Plus》 这本书(已有第6版), 里面内容比较深入浅出,虽然看起来比较厚,其实很多代码是重复的...教程里面使用的是开源的开发工具集合(g++、make、qtcreator等), Visual Studio 的 Qt 配置参看附加文档(QtCreator 支持用 VC 编译器生成程序,不需要用 Visual...示例代码: https://qtguide.ustclug.org/QtProjects/ 附加文档: https://qtguide.ustclug.org/extradoc/ (附带VS2015版本Qt...配置教程、虚拟机下载链接,MSYS2版本Qt安装教程、虚拟机下载链接,还有Linux版本Qt学习虚拟机下载链接等等,如果使用虚拟机需要 VMware 10 或以上版本)。
我在github仓库里面看到之前遗留的Qt_Demo,把文章相应的工程文件提交到仓库里面去,上次的简易聊天室也同步过去了,以及这篇文章的两个线程Demo。...给我个Star https://github.com/ADeRoy/Qt_Demo 多线程开发 线程基础 GUI线程与工作线程 每个程序启动后拥有的第一个线程称为主线程,即GUI线程。...QT中所有的组件类和几个相关的类只能工作在GUI线程,不能工作在次线程,次线程即工作线程,主要负责处理GUI线程卸下的工作。 什么时候用到多线程?...QThread的执行从run()函数的执行开始,在Qt自带的QThread类中,run()函数通过调用exec()函数来启动事件循环机制,并且在线程内部处理Qt的事件。...在Qt中建立线程的主要目的就是为了用线程来处理那些耗时的后台操作,从而让主界面能及时响应用户的请求操作。
浏览量 1 在QT的网路模块中提供了网络编程的相关接口来实现http的访问,其中包含了一些低级的类:QTcpSocket、QTcpServer和QUdpSocket,和一些高级的类:QNetworkRequest...主要是在这个文件中加入network,就可以进行网络编程了。...//qtspider.pro QT += core network QT -= gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG
一、环境介绍 QT版本: 5.12.6 操作系统: win10 64位 二、添加快捷注释 /* 工程: %{CurrentProject:Name} 日期: %{CurrentDate:yyyy-MM-dd...} 作者: DS小龙哥 环境: win10 QT5.12.6 MinGW32 功能: */
一、环境介绍 操作系统: win10 64位 QT版本: 5.12.6 Visual Studio IDE 版本: 2017 示例工程下载链接: https://download.csdn.net/...download/xiaolong1126626497/14919797 二、创建COM组件 为了方便测试,我这里使用QT来创建COM组件,再由QT自己调用。...QT创建COM的方法看这里: (1)VS2017下使用QT生成COM组件: https://blog.csdn.net/xiaolong1126626497/article/details/112556866...+= core gui QT += axcontainer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++11...#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
一、环境介绍 操作系统: win10 64位 QT版本: 5.12.6 Visual Studio IDE 版本: 2017 二、创建COM组件 为了方便测试,我这里使用QT来创建COM组件,再由QT...QT创建COM的方法看这里: (1) VS2017下使用QT生成COM组件: https://blog.csdn.net/xiaolong1126626497/article/details/...https://blog.csdn.net/xiaolong1126626497/article/details/112550412 本次文章是接着上一篇文章写的,创建的COM组件可以参考上一篇文章: QT...应用编程: windows下QT调用COM组件: https://blog.csdn.net/xiaolong1126626497/article/details/112978956 三、QtCreate...里创建工程调用COM组件完成界面开发 上一篇文章里介绍了在QtCreate里使用QAxObject调用COM组件,并完成函数接口调用;如果调用的COM组件是带界面的程序,并需要集成到当前QT程序中,就需要使用
QT中所有的组件类和几个相关的类只能工作在GUI线程,不能工作在次线程,次线程即工作线程,主要负责处理GUI线程卸下的工作。...二、QT多线程简介 QT通过三种形式提供了对线程的支持,分别是平台无关的线程类、线程安全的事件投递、跨线程的信号-槽连接。...从Qt4.8起,可以释放运行刚刚结束的线程对象,通过连接finished()信号到QObject::deleteLater()槽。...receiver, const char *method, Qt::ConnectionType type = Qt::AutoConnection ) Qt支持5种连接方式 A、Qt::DirectConnection...C、Qt::AutoConnection(自动方式) Qt的默认连接方式,如果信号的发出和接收信号的对象同属一个线程,那个工作方式与直连方式相同;否则工作方式与队列方式相同。
QThreadPool 此类为Qt提供的线程池函数,使用此类只需要配置线程池的最大线程数量、线程长时间不使用的过期时间等参数,不需要进行QThread相关的操作。...局部线程池 和常规类的使用相同,可以通过QThreadPool pool;的方式建立一个局部线程池,并由当前类维护,可保证此线程池仅供当前类应用 QRunnable类 QRunnable类在Qt中是所有可运行对象的基类
首先想到的解决方法自然是使用Qt自带的signal/slot机制。即首先发信号给父窗口,父窗口接到信号执行槽函数发送一个携带所需数据的信号给子窗口。...2、尝试解决 使用环境:Qt5.0, Qt creator2.6, Windows XP sp3 32bit 创建一个主窗口类和子窗口类,在主窗口类中声明一个QString类型的成员变量,访问权限设置为...上面3所标识的问题,其实并没有严格的要求,至少在Qt Creator中没有这样的限制。你可以将该成员变量设置为private,protected, public的,但是在子窗口中照样能访问。
一、环境介绍 操作系统: win10 64位 QT版本: QT5.12.6 编译器: MinGW 32 串口调试助手,在嵌入式开发中是很常用的。...效果图 三、核心代码 3.1 widget.cpp #include "uart_mainwindow.h" #include "ui_uart_mainwindow.h" /* * 设置QT
一、功能介绍 运行环境:Windows10 64位 QT通过QAudioInput类读取声卡PCM数据,在封装WAV头,转为WAV格式的文件保存到本地。 可以选择指定的声卡录制、播放音频。...define MAINWINDOW_H #include #include #include //这五个是QT...QAudioInput> #include #include #include #include #include QT_BEGIN_NAMESPACE...namespace Ui { class MainWindow; } QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT.../设置保存文件的路径 #define SAVE_FILE_PATH "test.pcm" #define SAVE_WAV_FILE_PATH "test.wav" #endif /* * 设置QT
Creator常用快捷键 2 Qt帮助文档的使用 3 总结 ---- 0 引言 IDE编程软件都一些使用技巧,Qt Creator也一样,本次博文总结下该软件常用的快捷方式,以及最强大的...Qt编程参考文档——Qt帮助文档的使用说明,学会查找使用该帮助文档,在做项目遇到问题时,比你在网上各种搜索答案靠谱的多啦。...1 Qt Creator常用快捷键 Qt Creator中界面上看的到的功能键,想知道它对应的快捷键,把鼠标移到这个按钮上面就会有悬浮显示,比如这个运行按钮: Qt Creator其他常用的快捷键如下...2 Qt帮助文档的使用 Qt Creator帮助文档不需要手动下载,在安装Qt时就安在了“安装目录/Qt5.12.9/Docs/”下了,html文本,可以用浏览器打开。 ...3 总结 本次博文总结了Qt Creator软件的常用快捷键,以及Qt帮助文档的使用,Qt帮助文档是非常给力和好用的,因为Qt Creator是国外软件,帮助文档自然也是英文的,不要一看到英文就慌或者烦
一、环境介绍 操作系统: win7 64位 家庭版 QT版本: 4.8.5 (qt-win-opensource-4.8.5-vs2010.exe) VS版本: 2010 因为最近用到的项目源代码在...二、相关软件包下载地址 2.1 QT库下载地址 下载地址: http://download.qt.io/archive/qt/4.8/4.8.5/ CSND下载地址: https://download.csdn.net...QT4.8.5库 : qt-win-opensource-4.8.5-vs2010.exe 2....QT在VS里的插件: qt-win-opensource-4.8.5-vs2010.exe 安装完1,2两个步骤之后,先打开QTCreate配置编译器,选择VS2010的编译器,会自动识别,再创建一个程序编译运行测试一下环境...QT环境没有问题之后,将剩下的软件全部安装完,再打开VS2010,如果QT插件安装成功,在VS2010的工具栏会出现QT的选项。 点击新建项目,可以选择创建QT4的工程。
Qt提供了QtActiveX模块来支持微软ActiveX的开发,Qt的ActiveX和COM的开发支持两种方式: 1. 支持将已有的COM或者ActiveX空间引入到Qt的应用程序中。 2....支持将Qt应用程序或者Qt的对象导出成COM对象或者ActiveX控件供他人使用。...二、相关软件包下载地址 2.1 QT安装包下载 下载地址: http://download.qt.io/archive/qt/5.12/5.12.6/ 2.2 VS2017社区版下载 微软官网下载地址...安装完毕之后,再重新打开VS2017,成功就会在菜单栏出现Qt VS Tools 选择。 点击 Qt VS Tools 配置QT的版本。...: 2.4 安装QT5.12.6 2.5 使用VS2017新建QT工程 解决方法: 点击系统最下角的windows图标,弹出菜单,通过首字母,找到QT的安装列表;选择Qt for
一、环境介绍 操作系统介绍:win10 64位 QT版本: 5.12.6 二、功能介绍 在绘制自定义窗口时,经常会在背景上绘制其他图形效果,又不想把背景色覆盖掉。...color.setAlpha(100); //其中,参数x为透明度,取值范围为0~255,数值越小越 三、示例代码 /* 工程: DrawTimeLine 日期: 2020-12-25 作者: DS小龙哥 环境: win10 QT5.12.6...color); QRectF posRect(0,20, 100,100); painter.setBrush(posBrush); //设置画刷 painter.setPen(Qt
项目程序在运行过程中经常需要创建一些临时目录并且在目录下创建一些临时文件,使用完毕之后,需要进行删除。
一、QT程序发布方式 Qt 发布的时候,通常使用两种方式: (1)静态编译 (2)动态编译 静态编译:把相关联的库一并引入可执行程序,虽然发布简单,但可执行程序本身较大。...二、动态打包发布 2.1 打包工具 在QT5以后的版本中,Qt 的编译器安装包里自带了一个打包工具: windeployqt.exe windeployqt 工具可以自动复制插件文件夹和 dll 文件、...,可以得到完整的 exe 程序发布集合,解决所有的依赖关系,不用手动去一个一个复制(QT4程序发布就需要自己手打复制,比较麻烦)。 2.2 准备工作 1. 需要一个完整正常编译的 QT 工程。 2....比如: MINGW 编译器: C:\app_setup\for_QtQt5.5.1\5.5\mingw492_32\bin\windeployqt.exe VS 编译器: D:\Qt\Qt5.5.0\5.5...第二步: 按下键盘上的windows按钮,打开窗口列表,找到QT安装的位置(按字母排序的Q),选择当前QT程序编译时使用的编译器,打开命令行终端。 第三步: 切换到QT程序存放的目录下。
一 、qt进程 qt中进程最主要的任务就是启动额外应用程序 并且跟他们之间通信。...进程类为QProcess 定义 用途 Header: #include qmake: QT += core Inherits: QIODevice//继承于IO设备类 1.1 QProcess基本使用...;//说明启动的额外的应用程序与当前qt应用程序是无依赖关系,可以脱离你独立运行 第二步:将要执行的应用 程序名字或者路径+应用 程序名字,做为start函数的参数即可 void MainWindow:...网络编程 网络软件协议: 网络大致分为两种模型:OSI 和 TCP/IP OSI:七层: 应用 表示 会话 传输 网络 数据链路 物理层 TCP/IP:四层:应用 传输 网络 物理层 应用层:http...ftp 传输:TCP UDP 网络:IP 在QT中,对于网络编程,也是采用模块化管理 To link against the Qt Network module, add this line to the
一、环境介绍 操作系统: win10 64位 QT版本: QT5.12.6 编译器: MinGW 32 TCP网络调试助手,在网络相关开发、嵌入式开发里使用较多,主要用来测试网络传输,调试等等。...对于基本的QT网络开发入门学习借鉴已经足够了。
一、环境介绍 操作系统介绍:win10 64位 QT版本: 5.12.6 二、代码设置QSpacerItem隐藏与显示 UI设计界面上弹簧控件: 方法1: //显示弹簧控件代码 ui->horizontalSpacer
领取专属 10元无门槛券
手把手带您无忧上云