
QtWidget的学习之路
文章平均质量分 76
学习和掌握QtWidget的界面编程。
神威难藏泪~
努力学习现代C++和QtWidget界面编程
展开
-
QtWidget使用Fluent组件库
该组件库的下载地址:[fluent ui组件库](https://github.com/Liniyous/ElaWidgetTools)。下载后解压,使用Qt Creator打开,注意必须是Qt6或者Qt5.15以后的版本原创 2024-06-15 21:33:21 · 2756 阅读 · 0 评论 -
Qt5+Opencv插件式开发
插件(Plug-in,又称addin、add-in、addon或add-on,又译外挂)是一种遵循一定规范的应用程序接口编写出来的程序。其只能运行在程序规定的系统平台下(可能同时支持多个平台),而不能脱离指定的平台单独运行。因为插件需要调用原纯净系统提供的函数库或者数据。很多软件都有插件,插件有无数种。例如在IE中,安装相关的插件后,WEB浏览器能够直接调用插件程序,用于处理特定类型的文件。在开发机器视觉项目通常使用QtWidget作为GUI框架,使用Opencv或者Halcon作为视觉算法框架。原创 2023-10-06 22:39:08 · 538 阅读 · 0 评论 -
QWidget实现开关按钮
首先是使用Q_PROPERTY将开关按钮的属性注册到Qt的元对象系统重,方便后续将开关控件集成到QtDesigner设计师界面中:如下是开关控件的属性:在绘制时,首先将上面属性中的颜色初始化://设置选中和未被选的画笔颜色elseelse//绘制外部大圆//绘制内圆绘制效果如下://鼠标点击(左键点击)else//鼠标松开checked =!checked;//改变状态//状态改变后,更改动画效果else//状态改变函数。原创 2023-10-04 22:38:34 · 1242 阅读 · 0 评论 -
Qt实现TCP网络通信
在标准C++中没有提供专门用于套接字通信的类,所以只能使用操作系统提供的基于C语言的API函数,基于这些C的API函数我们也可以封装自己的C++类。或者我们可以使用Qt框架,它提供了用于套接字通信的类(TCP、UDP)这样我们就可以直接调用相关API即可。QTcpServer:服务器类,用于监听客户端连接以及和客户端建立连接。QTcpSocket:通信套接字类,客户端与服务器都需要使用这个类。最后要使用这两个类,我们需要在Qt的.pro文件中添加network(网络模块)。原创 2023-10-01 23:18:59 · 1798 阅读 · 0 评论 -
Qt暗黑风格无边框可拉伸窗体
在使用Qt开发软件时,通常会通过布局以及Qss美化界面,但窗体自带的标题栏不符合软件开发的需求,所以必须去掉Qt自带的标题栏,但去掉后就会失去窗体的之前的属性,比如自由拉伸以及可以拖拽标题栏等。暗黑无边框窗体。原创 2023-06-19 21:46:04 · 683 阅读 · 0 评论 -
QSS美化控件教程(一)
在使用Qt开发界面程序时,常用控件的美化是一件繁琐的事情,收藏一些基本控件的美化样式,可以在项目开发时节省大量时间,本篇文章由此而出,收集常用的控件美化样式。以下qss代码是直接在Qt Designer设计界面中样式表中添加或者使用QFile读取qss代码进行修改控件样式。原创 2023-04-25 22:23:26 · 2137 阅读 · 1 评论 -
QCustomPlot的使用教程(二)
上一节中简单介绍了如何使用QCustomPlot绘制一条简单的曲线,下面将介绍如何通过QCustomPlot绘制多条曲线。原创 2023-04-22 19:24:58 · 741 阅读 · 0 评论 -
QCustomPlot的使用教程(一)
QCustomPlot是Qt的一个小型第三方图表库,支持静态/动态曲线、柱状图、蜡烛图、频谱图等。使用方便,仅需在项目中加入头文件qcustomplot.h和qcustomplot.cpp源文件即可,或者把它当做一个库来添加到项目当中,该绘图库专注于制作美观、出版物质量高的2D绘图、图形和图表,并为实时可视化应用程序提供高性能。原创 2023-04-14 23:01:14 · 1819 阅读 · 0 评论 -
Qt实战-通用软件界面
该项目是通过Qt Desinger设计师进行ui界面设计,然后通过Qt自带的属性动画来实现侧边栏的拉伸与收缩,下面将介绍界面如何设计。原创 2023-03-22 19:32:24 · 1271 阅读 · 2 评论 -
Qt实战-程序启动动画
很多的商用软件在启动之前都会有一段启动动画,当启动动画消失时,软件的主界面也就会呈现。程序的启动动画可以帮助我们了解到软件的一些相关信息,下面将介绍一个我自己设计的比较美观的程序启动动画。原创 2023-03-17 13:17:11 · 880 阅读 · 0 评论 -
Qt MVC之自定义代理
在Qt的MVC(Model-View-Controller)架构中,代理(Delegate)扮演着很重要的角色。代理用于控制Model在View中的显示方式,并负责处理用户与View的交互事件。在一些特殊的情况下,Qt提供了一些内置代理(例如QStyledItemDelegate、QItemDelegate等)用于控制View的显示方式。但是有时候,我们需要更加灵活地控制View的显示方式,这时就需要自定义代理。自定义代理需要继承。原创 2023-03-16 14:18:50 · 499 阅读 · 0 评论 -
Qt MVC之自定义Model
在Qt中,MVC(Model-View-Controller)模式是常用的模式之一,用于将应用程序中的数据(Model)与用户界面(View)分离开来。自定义模型允许开发者使用自己的数据结构作为模型,并将其与Qt的视图部件结合使用。自定义模型需要实现Qt中的抽象模型类(QAbstractItemModel)中的纯虚函数。其中,最基本的函数包括rowCount()、columnCount()、data()和index()函数。原创 2023-03-15 14:31:30 · 791 阅读 · 0 评论 -
Qt MVC结构之Model模型
MVC 就是Model-View-Control模式的简称,包括模型层(Model), 视图层(View), 控制层(Controller)。Model主要负责管理数据,View主要用来显示数据,Controller主要用来操作数据,控制View联动。Qt也采用了这个模式,模型层用Model,视图层用View,控制层改名叫了代理Delegate原创 2023-03-14 13:47:54 · 474 阅读 · 0 评论 -
QGraphicsView进阶篇
QGraphicsView 通过 QGraphicsView::setMatrix() 支持和 QPainter 一样的仿射变换,通过对一个视图应用变换,你可以很容易地支持普通的导航特性如缩放与旋转。原创 2023-03-10 19:41:45 · 371 阅读 · 0 评论 -
QGraphicsView初级篇
QT4.2开始引入了Graphics View框架用来取代QT3中的Canvas模块,并作出了改进,**QGraphicsView框架实现了模型-视图结构的图形管理,能对大量图元进行管理,支持碰撞检测,坐标变换和图元组等多种方便的功能**。原创 2023-03-08 20:37:37 · 523 阅读 · 0 评论 -
QtWidget绘制电池控件
使用QPainter来进行绘制自定义的控件,然后通过QTimer来实现电池控件的电量变化效果,效果图如下:原创 2023-01-26 18:47:53 · 1095 阅读 · 1 评论 -
QPainter的使用
Qt的绘图系统允许使用相同的API在屏幕和其他打印设备上进行绘制,整个绘图系统基于QPainter、QPaintDevice和QPaintEngine三个类。**QPainter用来执行绘制操作,QPaintDevice是一个抽象的二维空间,这个抽象的二维空间允许QPainter在上面进行绘制,也就是QPainter的工作空间。QPaintEngine为QPainter提供了在不同设备上进行绘制的接口**。QPaintEngine类应用于QPainter和QPaintDevice之间,通常对开发原创 2023-01-25 20:24:31 · 2683 阅读 · 0 评论 -
QtWidget使用Material风格的组件库
该组件库拥有炫酷的Material风格的组件,并且该组件库基于QtWidget开发的,目前实现了大约20个Material风格的组件,下面教大家如何编译该组件库,并将这个组件库运用到自己的项目中。原创 2023-01-12 19:36:26 · 14083 阅读 · 22 评论