灬Sunnnnn
不积跬步,无以至千里.不积小流,无以成江海
展开
-
QCustomplot - 1.开发环境搭建
QCustomPlot 是一个基于Qt的画图和数据可视化C++控件。QCustomPlot 致力于提供美观的界面,高质量的2D画图、图画和图表,同时为实时数据可视化应用提供良好的解决方案。1.下载地址Qt Plotting Widget QCustomPlot - Downloadhttps://www.qcustomplot.com/index.php/download下载QCustomPlot.tar.gz 和 QCustomPlot-sharedlib.tar.gz文件2...原创 2022-03-28 19:45:04 · 1474 阅读 · 0 评论 -
Qt QSqlQueryModel详解
1.功能概述QSqlQueryModel是QSqlTableModel的父类。QSqlQueryModel封装了执行SELECT语句从数据库查询数据的功能,但是QSqlQueryModel只能作为只读数据源使用,不可以编辑数据。QSqlTableModel详解2.常用APIvoid clear() //清除数据模型,释放所有获得的数据QSqlQuery query() //返回当前关联的QSqlQuery()对象void setQuery() //设置一个QSqlQuery对象...原创 2021-03-10 22:15:33 · 11964 阅读 · 7 评论 -
QT UDP通信(单播、广播、组播)
1.QUdpSocketUDP是轻量的、不可靠的、面向数据报、无连接的协议,它可以用于对可靠性要求不高的场合,与TCP通信不同,无需建立持久的socket连接。QUdpSocket用于实现UDP通信,与QTcpSocket主要区别是,QUdpSocket以数据报传输数据,而不是以连续的数据流。发送数据使用writeDatagram(),数据报的长度一般少于512字节,每个数据报包含发送者和接收者的IP地址和端口等信息。要进行UDP通信,首先需要bind函数绑定一个端口,用于接收传入的手机不能。当原创 2021-03-24 21:59:50 · 16527 阅读 · 10 评论 -
Qt QStandardItemModel用法
QStandardItemModelQStandardItemModel 是标准的以项数据(item data)为基础的标准数据模型类,通常与 QTableView 组合成 Model/View 结构,实现通用的二维数据的管理功能。示例具有以下功能打开一个纯文本文件,QStandardItemModel 获取数据模型。 编辑修改数据模型的数据,可以插入行、添加行、删除行 可以设置数据模型中数据,包括文字对齐方式、字体是否粗体等。 将修改后的模型数据另存为一个文本文件。#inc.原创 2021-02-24 21:22:20 · 10728 阅读 · 2 评论 -
Qt 事件处理机制简介
1.Qt中事件的来源,谁接收处理。Qt中事件的来源有两个:程序外部和内部,多数情况下来自操作系统,可以通过bool QEvent::spontaneous() const函数来获知,返回true,事件发生在应用程序之外(系统事件),否则返回false。事件由QObject类来接收,是Qt对象模型的核心,所有需要处理的事件类都必须继承QObject。2.事件处理顺序首先QCoreApplication::exec()开启了事件循环,一直到QCoreApplication::exit()被调用才原创 2022-04-18 23:21:45 · 2553 阅读 · 9 评论 -
Qwt QwtThermo绘制温度计
QwtThermo 是一个基于 Qt 框架的类库,用于创建温度计控件。它提供了一些方便的功能来展示和处理温度计相关的数据。QwtThermo 添加了特定于温度计的功能。设置温度范围:可以通过设置最小和最大温度值来定义温度计的范围。这样,温度计控件就可以根据范围来显示当前温度值。设置指示器颜色:可以为温度计的不同温度范围设置不同的指示器颜色。这样,在控件中显示的温度值将根据范围显示不同的颜色,以便更直观地表示温度程度。自定义刻度线:可以自定义温度计的刻度线和标签,以满足不同的需求。原创 2023-11-07 21:18:51 · 499 阅读 · 0 评论 -
Qwt QwtWheel绘制滚动轮
QwtWheel 是一个用于实现滚动轮控件的类库。它基于 Qt 框架,并提供了一些方便的功能来处理滚动轮的事件和绘图。QwtWheel 类继承自 QWidget类,用于定义滚动轮控件的通用行为。QwtWheel 添加了特定于滚动轮的功能。QwtWheel 可以用于创建具有滚动功能的自定义控件。如在图形界面中,可以使用滚动轮控件来调整数值。捕获滚动轮事件:QwtWheel 提供了滚动轮事件的处理函数,可以捕获滚动轮的旋转事件,并根据事件的类型执行相应的操作。原创 2023-11-07 20:45:37 · 246 阅读 · 0 评论 -
Qwt QwtPolarPlot类使用
QwtPolarPlot是Qwt库中用于绘制极坐标图的类。它继承自QwtPolarItemDict和QFrame类,并且可以作为QwtPlot控件的一部分使用。原创 2023-11-01 21:09:15 · 371 阅读 · 0 评论 -
Qwt QwtPlotMultiBarChart绘制多列柱状图
QwtPlotMultiBarChart 是 Qwt 绘图库中的一个类,用于绘制多列柱状图。它可以显示多个柱状条并将它们按照不同的类别分组显示。每个类别下的柱状条可以有不同的颜色和宽度。原创 2023-10-30 21:40:32 · 479 阅读 · 0 评论 -
Qwt QwtScaleDraw自定义坐标轴
QwtScaleDraw 是 Qt 绘图库 Qwt 中的一个类,用于绘制坐标轴刻度线和刻度标签。它提供了一些方法和属性来设置刻度线和标签的样式、布局和对齐方式。原创 2023-10-31 07:00:00 · 644 阅读 · 0 评论 -
Qwt QwtPlotBarChart自定义条形统计图
QwtPlotBarChart 是 Qt 绘图库 Qwt 中的一个类,用于绘制柱状图。它可以将数据通过柱形的高度来展示,方便比较不同数据量的大小差别。QwtPlotBarChart 类提供了一些方法和属性来设置柱形的样式、颜色、边界等。原创 2023-10-30 20:35:10 · 322 阅读 · 0 评论 -
Qwt QwtLegend和QwtPlotLegendItem图例类详解
QwtLegend类是Qwt绘图库中用于显示图例的类。图例用于标识不同曲线、绘图元素或数据的意义,以便用户能够更好地理解图表中的数据。通过QwtLegend类,可以方便地在图表中添加、删除和设置图例的位置、方向和样式等属性。QwtPlotLegendItem类是Qwt绘图库中用于在绘图中添加图例项的类。与QwtLegend类不同,QwtPlotLegendItem类是将图例项直接添加到绘图中,而不是作为独立的图例显示。可以将QwtPlotLegendItem对象与绘图对象相关联,以便在绘图中显示图例项。原创 2023-10-27 21:17:08 · 570 阅读 · 0 评论 -
Qwt QwtPlotGrid网格类详解
QwtPlotGrid类是Qwt绘图库中用于绘制网格的类。网格是图表中用于显示坐标轴刻度之间的辅助线的一种视觉元素。使用QwtPlotGrid类可以方便地添加水平和垂直网格线到绘图区域上。原创 2023-10-26 21:16:43 · 488 阅读 · 0 评论 -
Qwt QwtPlotMarker标记类详解
QwtPlotMarker类是Qwt绘图库中用于在图表上绘制标记的类。标记可以是垂直或水平线、直线、文本或箭头等。它可用于标记某个特定的位置、绘制参考线或注释信息。原创 2023-10-26 20:14:30 · 737 阅读 · 0 评论 -
Qwt QwtPlotCurve曲线类详解
QwtPlotCurve是用于绘制曲线图的类。通过QwtPlotCurve,可以将数据点绘制为平滑的曲线,并可以设置曲线的颜色、线宽和线样式等属性。QwtPlotCurve还提供了许多操作和显示曲线数据的方法,例如添加数据点、清空数据、设置数据符号等。2.1数据操作setRawSamples(const double *xData, const double *yData, int size):设置曲线的原始数据,传入x轴和y轴数据数组以及数据的长度。原创 2023-10-26 19:28:33 · 1113 阅读 · 0 评论 -
Qwt开发环境搭建(保姆级教程)
QWT,即Qt Widgets for Technical Applications,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或一组浮点数等方式提供, 输出方式可以是Curves(曲线),Slider(滚动条),Dials(圆盘),Compasses(仪表盘)等等。QWT工具库是基于Qt开发的,继承了Qt的跨平台特性。主要功能图形绘制:Qwt提供了一套强大的2D图形绘制功能,可以绘制曲线图、柱状图、等高线图、饼状图等各种类型的图形。原创 2023-10-24 20:23:01 · 981 阅读 · 0 评论 -
QCustomplot - 10.示例-山图
1.运行截图2.源码 // set locale to english, so we get english month names: customPlot->setLocale(QLocale(QLocale::English, QLocale::UnitedKingdom)); // seconds of current time, we'll use it as starting point in time for data: double now = QDateTi.原创 2022-03-30 20:39:35 · 714 阅读 · 0 评论 -
QCustomplot - 9.示例-股票图
1.运行截图2.源码 ui->customPlot->legend->setVisible(true); // generate two sets of random walk data (one for candlestick and one for ohlc chart): int n = 500; QVector<double> time(n), value1(n), value2(n); QDateTime sta.原创 2022-03-30 20:36:20 · 1466 阅读 · 0 评论 -
QCustomplot - 7.item详解
1.item类继承图在QCustomplot 中可以添加一些文字,曲线,直线等数据项,都是QCPAbstractItem的子类来实现的。2.示例源码: QCPItemTracer *itemDemoPhaseTracer; QTimer dataTimer; //设置可以拖动和缩放 ui->customPlot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom); .原创 2022-03-30 20:25:11 · 2298 阅读 · 0 评论 -
QCustomplot - 6.QCustomplot详解
一.QCustomplot这个类是此库的核心类,所有的一切操作都会在这上面运行。二.常用的接口1.设置背景图片void setBackground (const QPixmap &pm)2.添加图层、删除图层、清空graphs并释放资源QCPGraph *addGraph(QCPAxis *keyAxis=nullptr, QCPAxis *valueAxis=nullptr)bool removeGraph (QCPGraph *graph)int clearG原创 2022-03-30 19:44:36 · 7675 阅读 · 0 评论 -
QCustomplot - 5.QCPGraph详解
一.常用接口1.添加、删除图层添加图层:如果keyAxis和valueAxi为空,则底部(xAxis)用作键,左边(yAxis)用作值轴;如果指定,keyAxis和valueAxis必须位于QCustomPlot中QCPGraph *addGraph(QCPAxis *keyAxis=nullptr, QCPAxis *valueAxis=nullptr)bool removeGraph(QCPGraph *graph)2.设置画笔、画刷下面这段代码,添加了两个图层,分别设置画笔和原创 2022-03-29 22:13:20 · 6122 阅读 · 0 评论 -
QCustomplot - 4.QCPLegend详解
QCPLegend类作用是管理QCustomPlot内的图例1.常用接口设置legend是否显示,字体大小、颜色。 ui->customPlot->legend->setVisible(true); ui->customPlot->legend->setFont(QFont("Helvetica", 9)); ui->customPlot->legend->setTextColor(Qt::red);设置图标大小原创 2022-03-28 21:39:53 · 4757 阅读 · 3 评论 -
QCustomplot - 3.QCPAxis详解
1.QCPAxisQCPAxis类是坐标轴相关的类,十分重要。2.下图为坐标轴详细描述3.常用接口设置名称 ui->customPlot->xAxis->setLabel("x"); ui->customPlot->yAxis->setLabel("y");设置坐标轴是否显示 和 Tick Label 是否显示 ui->customPlot->xAxis2->setVisible(true);.原创 2022-03-28 21:10:46 · 4149 阅读 · 0 评论 -
QCharts - 6.示例-曲线图
一.示例二.源码QSplineSeries是用来绘制光滑曲线的类,它在两点之间连线时采用差值算法,绘制折线图采用的是QLineSeries序列类,两点间只是简单的用直线连接。 QChart *chart = new QChart(); chart->legend()->hide(); chart->setTitle("Multiaxis chart example"); //![1] //![2] QValueAxis *a原创 2022-04-07 10:00:00 · 1676 阅读 · 0 评论 -
QCharts - 5.示例-条形统计图
【代码】QCharts - 5.示例-条形统计图。原创 2022-04-07 09:00:00 · 1184 阅读 · 0 评论 -
QCharts - 4.QValueAxis类详解
QValueAxis是数值型坐标轴,与QLineSeries正好配合使用。一.常用方法1.坐标轴相关的//设置可见void setVisible()//设置最小值void setMin()//设置最大值void setMax()//设置范围void setRange()//设置轴标题void setTitleText()//设置轴标题可见void setTitleVisible()//设置轴标签格式void setLabelFormat()//设置标签原创 2022-04-06 20:37:38 · 4993 阅读 · 5 评论 -
QCharts - 3.QLineSeries类详解
一.QLineSeries类它是QXYSeries子类,用于绘制二维数据点的折线图,有以下常用方法。1.设置名称void setName(const QString &name)2.设置序列显隐、透明度、颜色、画笔、画刷void setColor()void setPen()void show()void hide()void setVisible()void setBrush()void setOpacity(); 0表示完全透明 1表示不透明原创 2022-04-06 19:29:01 · 11286 阅读 · 2 评论 -
QCharts - 2.QChart类详解
一.常用方法QChart是显示各种数据序列的绘图组件,有很多接口,通常一个设置函数对应一个读取函数。1.设置图表外观的方法//设置图表标题,支持html格式void setTitle(const QString &title)//设置图表标题画刷void setTitleBrush(const QBrush &brush)//设置字体void setTitleFont(const QFont &font)//设置主题,内置的ui设置,定义了图表的配色原创 2022-04-01 22:05:00 · 3061 阅读 · 0 评论 -
QCharts -1.概述
一.概述Qt Charts 是Qt提供的图表模块,能够绘制常见的折线图、柱状图、饼图等图表。Qt Charts基于Qt Graphics View架构,其核心组件是QChartView 和 QChar。以下是类的关系图。QPolarChart是用于绘制极坐标图的图表类。要使用Qt Charts模块,必须在项目.pro文件添加 Qt += charts,在需要使用QtCharts的类的头文件中,要使用如下包含语句:#include <QtCharts>using nam原创 2022-04-01 20:55:57 · 1809 阅读 · 0 评论 -
Qt 样式表详解(很全面,秒懂)
而我们在 c++ 代码中的窗口的 width 与 height 指的是整个盒子的宽度与高度, 这一点非常重要. 整个盒子的宽度应该等于: 左外边距 + 左边框 + 左内边距 + 内容宽度 + 右内边距 + 右边框 + 右外边距, 同理, 整个盒子的高度也是上下外边距,内边距,边框和内容高度的和。与背景相对应, 背景设置的是控件的最底层的颜色, 作为背景, 但 color 设置的前景色, 也就 是控件文字的颜色, color 属性是被所有 widget 都支持的。原创 2024-03-28 17:58:40 · 528 阅读 · 0 评论 -
Qt 实现橡皮擦拭显示图片
在一些游戏中看见类似解密破案的效果,使用手触摸去擦拭图片上的灰尘,然后显示最终的图片,所以也想试试Qt实现的效果。大家有自己想做的效果,都可以尝试。以下是效果展示图。可以控制橡皮擦的大小,进行擦拭。原创 2024-03-04 14:33:07 · 491 阅读 · 0 评论 -
Qt QtCreator添加自定义注释
在写代码的时候我们为了规范化,一般会加文件注释、类注释和函数注释;用注释来说明我们的代码,也方便模块化开发,那么我们在写注释的时候经常会写一些重复的内容,我们会复制粘贴。这样一来二去,就显得很繁琐。例如,触发:“filee”,触发种类:“custom”(也可以填写为其它内容)。在Qt中我们依次点开【工具】→【选项】→【文本编辑器】→【片段】在编辑器中输入filee,按回车,就会打印出注释语句。下面介绍QtCreator自定义的注释配置。输入 /** 然后回车就会出现注释语句。类似的还有函数注释、类注释。原创 2023-11-03 09:14:21 · 969 阅读 · 0 评论 -
Qt Creator配置MSVC编译环境、调试环境
获取和安装:cdb.exe 在 Debugging tools for Windows 中,而现在已经不单独提供下载,只在Windows SDK 或者Windows Driver Kit里面包含 所以需要下载微软的调试工具,最少需要下载 Windows SDK。在windows上开发,一般使用Qt Creator自带mingw编译器,编译和调试都很方便,安装Qt时勾选后,自动配置完毕。但是有时候我们需要使用MSVC的编译器,这个时候我们没法直接使用,需要配置环境才能使用,以下是配置方案。原创 2024-03-01 15:55:43 · 2840 阅读 · 0 评论 -
Qt QCryptographicHash类计算哈希值
QCryptographicHash 是 Qt 框架中提供的一个用于计算哈希值的类。哈希值是将任意长度的输入转换成固定长度的字符串。这个类使用不同的哈希算法(例如 MD4、MD5、SHA-1、SHA-256 等)来生成哈希值,并且可以用于数据的完整性校验、密码存储、数字签名等应用场景。支持多种哈希算法:QCryptographicHash 支持常见的哈希算法,包括 MD4、MD5、SHA-1、SHA-224、SHA-256、SHA-384 和 SHA-512 等。原创 2023-11-03 10:41:32 · 632 阅读 · 0 评论 -
Qt 国产嵌入式操作系统实现文字转语音功能(ekho库)
Qt 国产嵌入式操作系统实现文字转语音功能(TTS)_tts驱动 转文字-CSDN博客在继上篇文章之后,甲方粑粑不满意使用eSpeak发出的声音太难听了,这就不得不找个替代品,声音稍微好听了一些。使用ekho开源库。Ekho(余音)是一个免费、开源的中文语音合成软件。它目前支持粤语、普通话(国语)、诏安客语、藏语、雅言(中国古代通用语)和韩语(试验中),英文则通过Festival间接实现。Ekho支持Linux、Windows和Android平台。原创 2024-01-22 17:19:41 · 1492 阅读 · 0 评论 -
Qt SDL2播放Wav音频
注意这里采样率、通道数和采样大小的设置,本例只能用来播放无损的WAV。音频播放界面:AudioPlayWidget类。接下来演示一下如何使用SDL播放WAV文件。pro文件中加入multimedia模块。原创 2024-01-15 18:07:47 · 841 阅读 · 0 评论 -
Qt 国产嵌入式操作系统实现文字转语音功能(TTS)
本示例使用的CPU:rk3588。操作系统:kylin V10架构:aarch64在Windows端,我们很容易想到使用Qt自带的类QTextToSpeech来实现文字转语音功能,Qt版本得在5.11.0以上才支持。但是在嵌入式平台,尤其是在国产的操作系统中,我们需要编译Qt源码,使得Qt能够支持文字转语音功能,我使用的Qt版本5.12.8,我的想法是在编译配置中将文字转语音功能编译进去,但是我并没有找到相关的配置选项,如果有知道的大佬,请指教。Qt 文字转语音_qt 文本转语音-CSDN博客。原创 2024-01-15 17:32:42 · 1560 阅读 · 0 评论 -
Qt 二维码生成与识别
QZXing是一个基于Qt框架的二维码解码库,它是对ZXing(Zebra Crossing)开源项目的一个Qt封装。ZXing是一个功能强大的开源二维码解码库,支持多种类型的码,包括QR码、DataMatrix码、Aztec码等。QZXing提供了一个Qt插件,可以方便地在Qt应用程序中使用二维码解码功能。它可以在不同版本的Qt上运行,并提供了几种使用方式,包括直接解码图像、解码文件、解码摄像头捕获的图像等。使用QZXing可以轻松地将二维码解码功能集成到Qt应用程序中,实现扫描和解析二维码的功能。原创 2023-11-08 17:08:55 · 1112 阅读 · 0 评论 -
Qt QTableView排序
在开发过程中,我们需要通过点击表头来对QTableView或QTreeView等一系列高级视图进行排序操作,以下是进行排序的步骤。首先创建了一个QStandardItemModel对象或者继承QAbstractTableModel类作为数据模型,并设置了一些数据。然后创建一个QTableView对象,并将数据模型设置为其模型。接下来,创建一个QSortFilterProxyModel对象,并将QStandardItemModel对象设置为其源模型。然后设置QTableView开启排序功能。原创 2023-11-06 21:00:00 · 1742 阅读 · 0 评论 -
Qt 继承QAbstractListModel实现自定义ListModel
QAbstractListModel类提供了一个抽象模型,可以将其子类化以创建一维列表模型。QAbstractListModel为将其数据表示为简单的非层次项目序列的模型提供了一个标准接口。它不直接使用,但必须进行子类化。由于该模型提供了比QAbstractItemModel更专业的接口,因此不适合与树视图一起使用;如果您想提供一个用于此目的的模型,则需要对QAbstractItemModel进行子类化。如果您需要使用多个列表模型来管理数据,则可能更适合使用子类QAbstractTableModel。原创 2023-11-06 16:23:52 · 1114 阅读 · 0 评论