Qt 进阶
Qt的世界很精彩!
worthsen
Just do it!
展开
-
Linux下QT程序打包
Linux下QT程序打包1 简介2 步骤2.1 Release版本2.2 建文件夹并拷贝执行文件2.3 ldd查看链接库2.4 导出所需要的库2.5 编写执行脚本2.6 运行执行脚本参考1 简介windows下打包Qt程序有对应的工具windeploy,linux没有自带的,便自己找。ldd命令用于判断某个可执行的 binary 档案含有什么动态函式库。2 步骤2.1 Release版本QtCreate使用Release版本编译2.2 建文件夹并拷贝执行文件从可运行程序的文件中拿出可执行原创 2020-12-05 16:16:33 · 5488 阅读 · 0 评论 -
详解 QT 布局管理界面 图文并茂
一、效果 二、3种方法对比先入为主的心理现象决定了界面极其重要!Qt 一共有3 种方法用于管理窗体上子窗口部件的布局:绝对位置法、人工布局法和布局管理器法。1、绝对位置法这种方法是最原始的拖放窗口部件的方法。它对窗体的各个子窗口部件分配固定的大小和位置,是通过调用基类QWidget 提供的setGeometry()函数来实现的。绝对位置法有很多缺点:(1)用户无法改变...原创 2017-10-27 17:42:21 · 5286 阅读 · 1 评论 -
Qt--Qt Creator 快捷键
一、通用快捷键1、帮助文档“F1” 1 次,部分屏幕显示帮助文档,按“Esc”即可退出帮助文档。“F1” 2 次,全屏显示帮助文档,按“Esc”2次即可退出帮助文档。(1)类使用的相关介绍(2)查看所用部件(类)的相应成员函数(功能,参数,返回值)(3)查看部件的信号(4)查看部件的事件(所对应的虚函数如何编写)2、文件间操作F4,头文件和源文件之间切换3、函数声明...原创 2017-07-29 13:23:59 · 776 阅读 · 0 评论 -
Qt--FFMPEG Qt视频播放器之显示图像
一、介绍1、论坛中有人说使用QLabel显示视频流会占用较多的CPU资源,使用QPainter直接画出来会节约资源,自己试了一下,发展没啥区别(只是在自己的笔记本上做对比,没在其他电脑上做对比)。2、主要思路是,重写widget中的私有函数paintEvent,将要画出的图像在此函数中实现,然后用定时器connnect一个槽函数,在该槽函数中发送信号update。调用update会执行pa...原创 2018-07-09 14:22:57 · 2314 阅读 · 0 评论 -
Qt--QLabel显示视频,CPU占比问题小结
一、介绍1、QImage到QPixmap转换耗费的资源较多。将QImage在QLabel显示容易卡死。2、QWidget(QGLWidget)上Paintevent直接画快很多。3、现在的电脑的核显和独显一般都支持OpenGL,故而支持Qt中的QGLWidget。4、嵌入式硬件设备中,高端的一般也支持OpenGL,如rk3399。5、Qt 显示照片的方式有:(1)QLabe...原创 2018-07-05 13:57:52 · 10449 阅读 · 0 评论 -
Qt--划分画面并能拖拉
一、效果 二、创建对象///* 主预览界面部件 */QWidget *wd_preview;QWidget *wd_previewDiv; /* 画面划分 */QLabel *lb_display;QLabel *lb_display1;QLabel *lb_display2;QLabel *lb_display3;QLabel *lb_display4;...原创 2018-06-19 12:45:05 · 790 阅读 · 0 评论 -
Qt--QLayout
一、简介1、开发一个图形界面应用程序时,界面的布局和业务逻辑的设定,功能的实现一样重要。2、开发的界面应该要有拓展性。界面设计之初要考虑到不同用户的屏幕大小、纵横比例、分辨路可能不同,界面还有缩放这类情况。3、在 Qt 工程中,采用UI设计师模式来设计界面,并不能满足开发的全部需求,像部分界面的切换,就可能需要代码控件去实现,这个时候就需要考虑如何布局这些代码部件。而只采用setGeo...原创 2018-06-15 09:58:19 · 573 阅读 · 0 评论 -
Qt--QScrollArea
一、介绍1、The QScrollArea class provides a scrolling view onto another widget.2、A scroll area is used to display the contents of a child widget within a frame. If the widget exceeds the size of the fr...原创 2018-06-14 10:43:58 · 1243 阅读 · 0 评论 -
Qt--SQLite的使用
一、SQLite的介绍1、SQLite学习笔记--资料汇总2、SQLite学习笔记--SQLite的基本介绍和安装3、SQLite学习笔记--SQLite的命令与语法4、SQLite学习笔记--数据类型与创建数据库 二、创建SQLite数据库1、运行SQLite官方执行文件创建请看SQLite学习笔记--数据类型与创建数据库;2、在Qt 工程中创建请看在Qt中使用S...原创 2018-04-28 07:56:11 · 1101 阅读 · 0 评论 -
Qt--Access数据库
一、Access数据库简介Access 数据库是由微软发布的关联式数据库管理系统,一是可以用来存储数据,二是可用来进行数据分析,三是可以用来开发软件。1、用于存储数据 可作为别的开发工具(例如 .NET、C语言、VB 等)的数据库,用来存储数据。2、用于数据分析 Access 有强大的数据处理、统计分析能力,利用 Access 的查询功能,可以方便地进行各类汇总、平均等统计。并可灵活设...原创 2018-04-23 23:52:24 · 4448 阅读 · 1 评论 -
Qt--QCustomPlot
一、基础知识1、QT绘图有QWT和QCustomPlot,QWT比较麻烦一些,相比来说QCustomPlot简单易用。 二、QCustomPlot介绍1、QCustomPlot是一个用于绘图和数据可视化的Qt C++构件。 它没有进一步的依赖关系,并有很好的文档记录。 该绘图库专注于制作美观,出版品质的2D图表,图表和图表,以及为实时可视化应用程序提供高性能。 查看“设置”和“基...原创 2018-04-20 08:19:26 · 12624 阅读 · 0 评论 -
Qt--TCP
一、TCP简介1、TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内另一个重要的传输协议。在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之...原创 2018-04-15 19:23:22 · 602 阅读 · 0 评论 -
Qt--文件操作
一、文件和目录1、输入输出设备(1)QIODevice类是Qt 中所有I/O设备的基础接口类,为诸如 QFile、QBuffer 和 QTcpSocket 等支持读/写数据块的设备提供了一个抽象接口。QIODevice 类是抽象的,无法被实例化,一般是使用它所定义的接口来提供设备无关的I/O功能。(2)访问一个设备之前,需要使用 open() 函数打开该设备,而且必须制定正确的打开模式...原创 2018-04-09 08:06:56 · 560 阅读 · 0 评论 -
Qt--日志文件(log)
一、Qt 日志文件介绍1、平时code时,一般时debug模式,打印对应的信息就便于调试,但是工程最终生成release版本,需要将对应的log信息打印到文件中。2、Qt中模块core中有对应的类QMessageLogger,该类能方便的将调试信息打印到文件中。 二、函数类介绍1、QMessageLogger,介绍如下:The QMessageLogger class ge...原创 2018-03-16 21:06:54 · 5150 阅读 · 4 评论 -
Qt--Qt的编程风格与规范
致谢:原文链接参考资料:https://wiki.qt.io/Qt_Contribution_Guidelines https://wiki.qt.io/Qt_Coding_Style https://wiki.qt.io/Coding_Conventions https://community.kde.org/Policies/Library_Code_Policy https:...转载 2017-12-28 09:24:58 · 1366 阅读 · 0 评论 -
Qt-- Qt资料汇总
一、论坛1、Qt开源社区2、QTCN开发网3、Qt官方论坛4、编程中国Qt板块5、wiki_Qt6、CSDN中Qt板块7、QUIt Coding8、Qtsoftware9、Qtcenter10、Qt教程,Qt5编程入门教程(非常详细)二、知名博主1、朝闻道2、齐亮3、一去、二三里4、年底奉献-QT编写视频监管平台(开源)5、公孙...原创 2017-12-22 16:56:31 · 1359 阅读 · 0 评论 -
OpenCV3.2+Qt5.8.0+Win10开发视频监控系统----Qt工程的发布
一、基础知识因为QT基本上都是采用动态编译的(被安装的OS中的),(如安装包往往都是默认动态编译处理好的动态库),所以我们采用动态连接的方式进行发布应用。如果采用静态的方式发布,则需要重新通过对QT的源码进行“静态编译”后形成lib,或者obj的形式。然后安装在开发的系统中。采用QTCreater继承开发环境编译,以及发布处理。总体来说非常方便,(1)选择器以Debug或者Re...原创 2018-01-19 09:09:05 · 1070 阅读 · 0 评论 -
OpenCV3.2+Qt5.8.0+Win10开发视频监控系统----Qt之视频显示窗口固定
一、问题之前做的监控小应用,调试的时候出现,屏幕一直放大的情况。应用如下图。 二、问题分析博主理解是这样的:视频显示在Qlabel部件上,Qlabel又是整个布局中的一部分,整个栅格布局中有对应的比例,图中的 1 和 2 水平策略都设置为Ignored,显示时就能按之前栅格布局中的比例显示,如果不是,显示就会一直变大。后续有了新的理解或者路过的有更好的理解,请在评论里告知一...原创 2018-01-18 11:20:25 · 1069 阅读 · 0 评论 -
OpenCV3.2+Qt5.8.0+Win10开发视频监控系统----Qt之中文显示[字库]
一、环境(1)平台:Freescale imx6q(2)编译系统:yocto (3)Qt版本:5.6.2 二、问题及解决思路1、问题移植了一个Qt程序到开发板,发现中文都没有显示,英文可以显示。 2、思路添加中文字库,DroidSansFallback.ttf。 字库 三、步骤一、工程中添加代码1、其中关键部分代码(设置后,QML里面同样可以显示...原创 2017-10-30 19:54:35 · 673 阅读 · 0 评论 -
OpenCV3.2+Qt5.8.0+Win10开发视频监控系统----Qt之设置应用程序图标
一、图标设置效果(1)未设置前(2)设置后 二、设置步骤1、首先,创建一个图标格式的位图文件,其中包含图标的图像。(1)这可以用例如微软Visual Studio,选择:文件 -> 新建 -> 文件(F)…,选择图标文件,然后打开(注意:不需要应用程序加载到Visual Studio,这里只使用图标编辑器)。(2)更简单的是找美工做一个或者在网上...原创 2017-12-04 16:03:17 · 1364 阅读 · 0 评论 -
OpenCV3.2+Qt5.8.0+Win10配置和使用----打开笔记本摄像头
一、步骤1、新建Qt工程2、在Pro文件中添加opencv 库的头文件和源文件路径3、在Ui布局中,放入Label 部件,并将栅格化(为了视频能随着窗口大小做调整), 最终视频要在Label上显示4、具体代码思路利用opencv中的VideoCapture 类中的 成员函数open()来打开摄像头将每次读取的摄像头数据处理成能在label 部件中显示的数据格式,然后...原创 2017-11-02 14:36:01 · 2625 阅读 · 4 评论 -
OpenCV3.2+Qt5.8.0+Win10配置和使用----配置环境变量+编译opencv+opencv-contrib
一、配置环境变量(1)PATH中添加对应的变量(CMake和Qt环境变量)(2)生效操作 A、设置环境变量后重启电脑 B、打开DOS终端, 如果是设置环境变量“PATH”,则在修改完成后,在DOS窗口命令行中输入:set PATH=C: ,然后关闭DOS窗口。再次打开DOS窗口,输入:echo %PATH% ,可以发现“我的电脑”->“属性”->“高级”-&...原创 2017-09-17 19:34:23 · 2577 阅读 · 0 评论 -
OpenCV3.2+Qt5.8.0+Win10配置和使用----opencv3.2的配置
一、介绍 opencv 从3.0.0开始不在提供合并的库,而是将原先合并的库分开为两个库,分别是:核心功能库和拓展功能库。而核心库依然提供Android开发所需要的静态库支持,但是如果需要用到最近大红大紫的人工智能相关功能,必然用到扩展功能库提供的诸如人脸识别等功能,所以需要我们手动CMake生成Android所需要的静态库,这里主要讲如何生成操作,生成我们需要的静态库。这里顺便吐槽一下,...原创 2017-09-15 10:31:02 · 1439 阅读 · 0 评论 -
OpenCV3.2+Qt5.8.0+Win10配置和使用----CMake的安装
一、CMake介绍CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CmakeLists.txt。Cmake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile ...原创 2017-09-15 09:33:52 · 1042 阅读 · 0 评论 -
OpenCV3.2+Qt5.8.0+Win10配置和使用----Qt5.8.0的安装
一、Qt介绍1、说到Qt,不能不说到C++,这门伟大的语言。因为其面向对象的编程思想和陡峭的学习曲线,一开始学习起来很是吃力。Qt从QT4开始基本封装了很多C++的工具库和界面库,而且支持跨平台,这是它最大的优势。相比于古老的MFC和使用C#的WPF来说,我更喜欢Qt来进行C++的界面设计,这也是我从新开始拾起Qt学习之路的原因。2、Qt,坦白来说,并不只是一个界面库,他是C++编程思想的...原创 2017-09-15 09:04:44 · 1472 阅读 · 0 评论