Qt实用技巧:在CentOS上使用linuxdeployqt打包发布qt程序
前言 之前在ubuntu上发布qt程序相对还好,使用脚本,在麒麟上发布的时候,使用脚本就不太兼容,同时为了实现直接点击应用可以启动应用的效果,使用linuxdeployqt发布qt程序。 本篇文章依然是继续发布主题,有centOS的qt项目需要发布,系统是CentOS8.2,同时也做了Ce »
前言 之前在ubuntu上发布qt程序相对还好,使用脚本,在麒麟上发布的时候,使用脚本就不太兼容,同时为了实现直接点击应用可以启动应用的效果,使用linuxdeployqt发布qt程序。 本篇文章依然是继续发布主题,有centOS的qt项目需要发布,系统是CentOS8.2,同时也做了Ce »
前言 之前在ubuntu上发布qt程序相对还好,使用脚本,在麒麟上发布的时候,使用脚本就不太兼容,同时为了实现直接点击应用可以启动应用的效果,使用linuxdeployqt发布qt程序。 本篇文章依然是继续发布主题,有centOS的qt项目需要发布,系统是CentOS8.2,同时也做了Ce »
目录 1、QPixmap 2、QBitmap 3、QImage 4、QPicture 5、QImage与pixmap的区别 6、QPixmap与QImage相互转换 7、视频显示的用法 绘图设备是指继承 QPaintDevice 的子类,你可以使用 QPainter 直接在其上面绘制图形,Qt »
目录 1、双缓冲机制 2、实例效果图 3、实例核心代码 4、双缓冲具体实现代码 1、双缓冲机制 所谓双缓冲机制,是指在绘制控件时,首先将要绘制的内容绘制在一个图片中,再将图片一次性地绘制到控件上。 在早期的Qt版本中,若直接在控件上进行绘制工作,则在控件重绘时会产生闪烁的现象,控件重绘频 »
目录 1、双缓冲机制 2、实例效果图 3、实例核心代码 4、双缓冲具体实现代码 1、双缓冲机制 所谓双缓冲机制,是指在绘制控件时,首先将要绘制的内容绘制在一个图片中,再将图片一次性地绘制到控件上。 在早期的Qt版本中,若直接在控件上进行绘制工作,则在控件重绘时会产生闪烁的现象,控件重绘频 »
目录 QT打包的两种方式 具体步骤 QT打包的两种方式 一个是QT5自带的windeployqt(不需要下载安装),它可以找到程序(exe)用到的所有库文件,并且都拷贝到exe程序的当前文件。此时打包的exe较小,需要和拷贝进来的文件放一起运行,也可以将这些文件再次打包成一个大的exe文件 »
目录 QT打包的两种方式 具体步骤 QT打包的两种方式 一个是QT5自带的windeployqt(不需要下载安装),它可以找到程序(exe)用到的所有库文件,并且都拷贝到exe程序的当前文件。此时打包的exe较小,需要和拷贝进来的文件放一起运行,也可以将这些文件再次打包成一个大的exe文件 »
目录 一、前言 二、效果图 三、体验地址 四、相关代码 五、功能特点 5.1 基础功能 5.2 特色功能 5.3 视频控件 5.4 音频组件 一、前言 以前一直以为只有Qt5以后才有QAudioOutput播放音频,其实从Qt4.6开始就有,在Qt6中变成了QAudioSink,功能一 »
目录 一、前言 二、效果图 三、体验地址 四、相关代码 五、功能特点 5.1 基础功能 5.2 特色功能 5.3 视频控件 5.4 音频组件 一、前言 以前一直以为只有Qt5以后才有QAudioOutput播放音频,其实从Qt4.6开始就有,在Qt6中变成了QAudioSink,功能一 »
目录 1、多线程操作UI界面的示例 2、避免多次connect 3、优雅地结束线程的两种方法 为了让程序尽快响应用户操作,在开发应用程序时经常会使用到线程。对于耗时操作如果不使用线程,UI界面将会长时间处于停滞状态,这种情况是用户非常不愿意看到的,我们可以用线程来解决这个问题。 大多数情况下 »
目录 1、多线程操作UI界面的示例 2、避免多次connect 3、优雅地结束线程的两种方法 为了让程序尽快响应用户操作,在开发应用程序时经常会使用到线程。对于耗时操作如果不使用线程,UI界面将会长时间处于停滞状态,这种情况是用户非常不愿意看到的,我们可以用线程来解决这个问题。 大多数情况下 »
目录 1、SQLite 介绍 2、用法 2.1、准备 2.2、使用 3、完整示例程序 项目中通常需要采用各种数据库(如 Qracle、SQL Server、MySQL等)来实现对数据的存储、查询等功能。下面讲解如何在 Qt 中操作 SQlite 数据库。 1、SQLite 介绍 S »
在 C++ 和 Qt 中,可以通过以下方式利用 GPU 进行加速计算: 使用 GPU 编程框架:可以使用类似 CUDA、OpenCL、DirectCompute 等 GPU 编程框架,这些框架提供了对 GPU 的访问和操作,可以使用 GPU 进行并行计算,从而加速计算速度。 使用图形 API:在 »
目录 录屏部分 录音部分 合成部分 转成动态库 完整项目 录屏部分 录屏的主要思路为抓取屏幕截图,然后将其合成视频。抓取屏幕若使用qt自带的抓屏会出现抓不到鼠标的问题,所以应重写抓屏: static QPixmap grabWindow(HWND winId, int x, int y, »
目录 录屏部分 录音部分 合成部分 转成动态库 完整项目 录屏部分 录屏的主要思路为抓取屏幕截图,然后将其合成视频。抓取屏幕若使用qt自带的抓屏会出现抓不到鼠标的问题,所以应重写抓屏: static QPixmap grabWindow(HWND winId, int x, int y, »
Qt自带的日期选择控件过于丑陋与难用,所以但凡有点小想法的人都会做一个全新的日历。 这就是本人制作的日历的截图: 制作日历的核心难点是填充日历。以下为我的填充日历函数: void STCalandarWidget::FillCalandar() { QDate firstDay »
目录 1、播放音乐 2、播放视频 3、多媒体元信息 MediaPlayer 是 QML 提供的核心多媒体类,可以播放音频、视频。要使用 MediaPlayer,需要引入 QtMultimedia 模块,在 QML 文档的开始加入 “import QtMultimedia 5.0” 语句。QML »
C++/Qt网络通讯模块设计与实现(四) 在C++/Qt网络通讯模块设计与实现(三)中提到了一个概念,即接受者所依附的线程;关注我微信公众号的技术朋友留言对该概念还是不解,这节就单独讲述这个概念的理论与实际应用,这种应用无 »
目录 目标任务 详细步骤 一、新建qrc文件,添加和保存资源文件 二、新建css样式表文件 如何使用 CMakeLists文件 总结 原生的QT界面不好看,有时候需要根据美工的设计图修改样式。如果使用QML的话搞界面是快,但是QML有点儿吃内存,有时简单的功能还是用传统c++的wid »
目录 目标任务 详细步骤 一、新建qrc文件,添加和保存资源文件 二、新建css样式表文件 如何使用 CMakeLists文件 总结 原生的QT界面不好看,有时候需要根据美工的设计图修改样式。如果使用QML的话搞界面是快,但是QML有点儿吃内存,有时简单的功能还是用传统c++的wid »