QT学习笔记
文章平均质量分 66
i胡说
这个作者很懒,什么都没留下…
展开
-
QtOpenGL开发(三)着色器编程
OpenGL渲染管道的渲染过程可以拆分成多个小步骤,这些步骤之间是紧密关联的,上一步的输出会成为下一步的输入。由于这些处理过程是没有状态的,可以并发运行,所以可以在显卡上同时并发处理大量的图形数据。这些运行在GPU上的小程序被称为着色器程序(shaders)。转载 2023-10-08 16:48:04 · 511 阅读 · 0 评论 -
QtOpenGL开发(二)绘制立方体
在OpenGL中三维实体会被拆分成一个个小的平面图形来进行绘制。比如我们绘制的立方体,可以拆分成六个平面来进行绘制。这里我们以一个带纹理的正方体来说明一下三维实体的绘制方法。转载 2023-10-08 16:38:37 · 1096 阅读 · 0 评论 -
QTOpenGL开发(一)绘制平面图形
在QT中进行OpenGL开发的实现方式有很多种,最简单直接的方式就是通过子类化QOpenGLWindow实现OpenGL的绘制和渲染。QOpenGLWindow是用来显示OpenGL的窗口和QT中的其它的标准窗口没有什么区别,我们可以将它和其它的QT控件组合到一起使用。转载 2023-10-08 16:22:56 · 1631 阅读 · 0 评论 -
Linux 环境下 Qt 可执行程序依赖库打包脚本
Linux 环境下 Qt 可执行程序依赖库打包脚本使用 Qt Creator 完成程序编码之后,虽然会在 Debug 或 Release 文件下生成可执行程序,但是他们是依赖 Qt Creator 环境的,拷贝到别的机器上就会提示加载依赖库错误。转载 2023-05-04 17:51:11 · 1905 阅读 · 0 评论 -
centos7安装Qt5.12.12
yum -y groupinstall "GNOME Desktop"yum -y groupinstall "Development Tools"转载 2023-04-07 11:13:18 · 920 阅读 · 0 评论 -
GIS开发四:Graphics View实现简单离线地图
地图资源本身是图片资源,多张256×256分辨率的图片拼接起来,给用户显示的将是一个完整的地图效果。这些256×256的图片被称作瓦片地图。瓦片地图有着典型的金字塔结构转载 2023-03-31 17:45:52 · 1506 阅读 · 0 评论 -
GIS开发三:加载谷歌离线地图(QWebEngineView)
参考文档 QWebEngineView加载谷歌离线地图 中介绍通过水经注万能地图下载器可以下载所需的离线地图。但是这个水经注需要注册后才能下载地图。参考文档 GIS开发二:批量下载和拼接地图瓦片 中介绍了如何手搓代码下载所需的离线地图。原创 2023-03-31 16:38:25 · 1226 阅读 · 0 评论 -
Qt 解决qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed问题
Qt 使用QNetwork 模块,进行api请求时发生错误,错误信息:qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed转载 2023-03-29 14:32:34 · 2070 阅读 · 0 评论 -
QTextEdit详解
QTextEdit详解(设置显示内容的两种方式(setPlainText/insertPlainText、滚动条自动(往下、往上)滚动……)转载 2023-03-27 14:21:00 · 4500 阅读 · 0 评论 -
Qt报错 converting to execution character set:illegal byte sequence
Qt报错 converting to execution character set:illegal byte sequence原创 2023-03-27 11:41:36 · 658 阅读 · 0 评论 -
Qt5自定义控件(插件)封装SDK集成到QtDesigner和QtCreater、Framework中
在使用Qt Designer设计窗体界面时,我们可以使用Widget Box里的窗体控件非常方便的绘制界面,比如拖进去一个按钮,一个文本编辑器等。虽然Qt Designer里的控件可以满足我们大部分的需求,但是有时候,也会产生一些特殊的需要,比如一个仪表盘,我们要输入的是最大最小刻度值,仪表盘的量程、更新周期等。如果我们的多个窗体上都需要使用这个仪表盘,那么构造这样一个控件,将会非常方便,不需要手动修改颜色等参数属性。下面就以此为例,讲解一下如何创建自定义的窗体控件。转载 2023-03-21 14:33:42 · 1484 阅读 · 0 评论 -
Qt事件过滤器:installEventFilter
Qt的事件过滤由以上两个方法实现,首先安装一个事件过滤器,然后重写bool eventFilter(QObject *obj, QEvent *event)。filterObj表示事件筛选器对象,它接收发送到此QObject对象的所有事件。筛选器可以停止事件,也可以将事件转发给此QObject对象。事件过滤器filterObj通过它的eventFilter()函数接收事件。转载 2023-03-14 15:57:23 · 2053 阅读 · 0 评论 -
Linux Qt cannot find -lGL错误完美解决方案(亲测有效)
这是因为 Qt 找不到 OpenGL 的动态链接库(libGL.so)。在《Linux Qt安装》一节中我们说过,OpenGL 在大部分 Linux 发行版中都是默认安装的,包括 Ubuntu、CentOS 等,找不到该链接库一般都是路径不对。转载 2023-03-07 11:33:18 · 784 阅读 · 0 评论 -
Could not start process “make” qmake_all
Could not start process “make” qmake_all转载 2023-03-06 10:36:06 · 444 阅读 · 0 评论 -
ubuntu下qt-creator启动失败解决方法
ubuntu下qt-creator启动失败解决方法转载 2023-03-03 15:39:39 · 940 阅读 · 1 评论 -
Qt项目管理:pri子工程
我们可以把 *.pro 文件内的一部分内容单独放到一个 *.pri 文件内,然后包含进来。使用的时候采用include引用即可。转载 2021-10-31 21:45:12 · 827 阅读 · 0 评论 -
Qt学习笔记20:QEventLoop
在任何时候,你都可以创建一个QEventLoop的对象,然后调用它的exec() 来开始一个局部的事件循环。转载 2021-10-18 22:45:56 · 897 阅读 · 0 评论 -
Qt学习笔记19:QSlider
QSlider部件提供了一个垂直或水平滑动条。滑块是一个用于控制有界值的典型部件。它允许用户沿水平或垂直方向移动滑块,并将滑块所在的位置转换成一个合法范围内的值。转载 2021-10-18 22:29:50 · 1110 阅读 · 0 评论 -
关于QOpenGLWidget的多线程渲染
QOpenGLWidget是Qt中继承自QWidget的一个类,对OpenGL的渲染环境进行了很好的封装。用户在使用时只用继承并重写几个关键的虚函数即可完成OpenGL资源的准备和每帧画面的绘制。转载 2021-09-10 17:12:33 · 3027 阅读 · 0 评论 -
Qt学习笔记18:SDL显示视频闪烁问题
主窗口缩放或者弹出其它窗口会导致视频渲染窗口部分出现视频闪烁问题,这种问题主要出现在调用第三方库渲染视频的时候缩放窗口就会出现视频闪烁问题。产生闪烁的主要原因是由于Qt自身的渲染引擎和第三方库渲染冲突造成的。因此解决办法可以采用屏蔽Qt自身的渲染。原创 2021-08-06 09:44:36 · 1080 阅读 · 0 评论 -
Qt学习笔记17:控件全屏与退出全屏
控件全屏与退出全屏实例代码原创 2021-08-05 11:43:22 · 537 阅读 · 0 评论 -
Qt学习笔记16:继承 QWidget setStyleSheet无效
继承自QWidget的自定义类 ,使用setStyleSheet无效,如果删除头文件中的 Q_OBJECT,setStyleSheet生效,但不用OBJECT 就无法所使用signal and slot原创 2021-08-05 11:32:12 · 799 阅读 · 0 评论 -
Qt学习笔记15:setWindowFlags和 setAttribute
很多人可能使用第2类设置属性,但是总是不成功,其原因是如果子窗口有父亲,则窗口属性也被父亲控制,这时候的这个子窗口其实并不是严格意义上的完整窗口,相当于父窗口的一个部件,所以这时候设置自定义窗口属性,有两种方法:(1)设置父亲窗口属性,(2)给子窗口设置属性的时候加上 Qt::Window 或 Qt::Dialog等指定该子窗口为完整窗口,(Qt::DIalog | Qt::CustomizeWindowHint )转载 2021-08-03 16:00:14 · 2947 阅读 · 0 评论 -
Qt学习笔记14:QSizePolicy
QSizePolicy描述着控件在布局管理器中水平方向和垂直方向大小拉伸的策略,重点是在布局管理器中,由布局管理器来控制控件两个方向的大小是如何变化,而这个策略与sizeHint()属性(控件的建议大小,控件必须是在布局管理器中该属性才有效)息息相关。转载 2021-08-03 15:29:24 · 403 阅读 · 0 评论 -
Qt变量2:QSettings
QSettings导入导出,保存信息。*.ini详细内容转载 2021-07-07 22:27:38 · 297 阅读 · 0 评论 -
Qt变量1:QVariant
QVariant 这个类型充当着最常见的数据类型的联合。QVariant 可以保存很多Qt的数据类型,包括QBrush、QColor、QCursor、QDateTime、QFont、QKeySequence、 QPalette、QPen、QPixmap、QPoint、QRect、QRegion、QSize和QString,并且还有C++基本类型,如 int、float等。原创 2021-07-07 22:17:13 · 1027 阅读 · 0 评论 -
Qt中类的前向声明和#include的区别
Qt在头文件中引入另一个类经常有两种写法,一是前向声明,二是#include引入。原创 2021-07-07 21:51:04 · 665 阅读 · 0 评论 -
Qt多线程3:条件变量(QWaitCondition)
QWaitCondition是用来同步线程的条件变量,头文件#include <QWaitCondition>,类中的所有函数都是线程安全的。主要的公共函数如下表:原创 2021-07-01 21:51:27 · 3073 阅读 · 0 评论 -
Qt多线程2:线程池(QThreadPool)
用来管理 QThreads。此类中的所有函数都是线程安全的.转载 2021-06-24 22:42:53 · 2587 阅读 · 0 评论 -
Qt多线程1:QThread
Qt有两种多线程的方法,其中一种是继承QThread的run函数,另外一种是把一个继承于QObject的类转移到一个Thread里。Qt4.8之前都是使用继承QThread的run这种方法,但是Qt4.8之后,Qt官方建议使用第二种方法。两种方法区别不大,用起来都比较方便,但继承QObject的方法更加灵活。这里要记录的是如何正确的创建一个线程,特别是如何正确的退出一个线程。转载 2021-06-24 22:27:16 · 1232 阅读 · 0 评论 -
Qt学习笔记13:外观设计(QBrush & QPen)
Qt中提供了强大的2D绘图系统,可以使用相同的API在屏幕上和绘图·设备上进行绘制,主要基于QPainter、QPainterDevice和QPainterEngine这3个类。QPainter执行绘图操作,QPainterDevice提供绘图设备,是一个二维空间的抽象,QPainterEngine提供一些接口。QPainter可以绘制一切简单的图形,从简单的一条直线到任何复杂的图形。QPainter类可以在一切继承QPainterDevice的子类上进行绘制操作。原创 2021-06-23 23:21:02 · 1229 阅读 · 1 评论 -
Qt学习笔记12:外观设计(QPalette)
QPalette( [ˈpælət] 调色板)类相当于对话框或控件的调色板,它管理着控件或窗体的所有颜色信息,每个窗体或控件都包含一个QPalette对象,在显示时按照它的QPalette对象中对各部分各状态下的颜色的描述来进行绘制。原创 2021-06-23 17:55:20 · 296 阅读 · 0 评论 -
Qt学习笔记11:外观设计(QProxyStyle)
QProxyStyle封装了一个QStyle(通常是默认的系统风格),用于动态覆盖绘画或其他特定风格的行为。原创 2021-06-22 16:20:21 · 1040 阅读 · 0 评论 -
Qt学习笔记10:外观设计(QStyle)
Qt是一个跨平台的类库,相同的界面组件在不同的操作系统上显示效果是不一样的。QStyle是封装了GUI界面组件外观的抽象类,Qt定义了QStyle类的一些子类,应用于不同的操作系统,如QWindowsStyle、QMacStyle等。这些样式是Qt CUI模块自带的,在不停的平台上编译运行的程序具有缺省的样式,QApplication::style()可以返回应用程序缺省的样式。原创 2021-06-22 16:01:50 · 504 阅读 · 0 评论 -
ubuntu安装和卸载Qt及配置编译器
文章目录0. 参考文献1. 安装2. 卸载3. linux下qt找不到 GL库问题解决4. 自带Qt creator无法编译的问题错误提示!错误原因添加编译器:添加GCC编译器配置编译器再次编译,编译通过0. 参考文献creator找不到编译器 qt_Ubantu 安装和卸载QT1. 安装sudo apt-get install build-essentialsudo apt-get install qtcreatorsudo apt-get install qt5-default安装帮助原创 2021-05-26 15:00:28 · 1576 阅读 · 0 评论 -
Qt学习笔记9:setEchoMode()
设置输入显示模式转载 2020-10-12 17:40:10 · 2429 阅读 · 0 评论 -
Qt学习笔记8:QTextCodec
在Qt程序中出现latin1字符集以外的字符集,我们会立刻马上想到QTextCodec。并且会同时使用下面的几行条代码:转载 2020-10-12 13:59:29 · 634 阅读 · 0 评论 -
Qt学习笔记7:qInstallMessageHandler
qInstallMessageHandler接受指定类型的函数指针,这样程序员可以自定义函数名及函数位置。原创 2020-10-12 11:25:02 · 500 阅读 · 0 评论 -
Qt学习笔记6:Qt项目中的main主函数
main.cpp 是实现 main() 函数的文件,下面是 main.cpp 文件的内容。转载 2020-10-10 10:35:25 · 1987 阅读 · 0 评论 -
Qt学习笔记5:Qt项目界面(.ui)及其作用
创建Qt项目,并用Qt Designer对窗体进行可视化设计,保存之后生成对应的项目文件。本文分别分析各个文件的内容及其功能,以及它们是如何联系在一起工作,实现界面的创建与显示的。转载 2020-10-10 10:32:07 · 3469 阅读 · 3 评论