feiyangqingyun
欢迎关注公众号:Qt实战/Qt入门和进阶(各种开源作品、经验整理、项目实战技巧,专注Qt/C++软件开发,视频监控、物联网、工业控制、嵌入式软件、国产化系统应用软件开发)
展开
-
Qt/C++控件SDK使用示例大全
文章链接01表盘控件-01汽车仪表盘-gaugecarhttps://qtchina.blog.csdn.net/article/details/12024025701表盘控件-02圆弧仪表盘-gaugearchttps://qtchina.blog.csdn.net/article/details/12024033301表盘控件-03百分比表盘-gaugepercenthttps://qtchina.blog.csdn.net/article/details/1202...原创 2021-11-07 10:12:27 · 11773 阅读 · 1 评论 -
00前言说明-Qt自定义控件大全
Qt自定义控件是一套纯QtWidget代码编写的自定义控件大全组件,简称quc,是一套和qwt类似的自定义控件插件。不仅控件数量远超qwt以及其他第三方的控件组件,每个控件都有独立的使用demo并且注释详细,非常适合初学者和进阶者。原创 2022-09-02 15:15:30 · 4277 阅读 · 0 评论 -
18通用类库-12省市县联动-cityhelper
一、运行效果二、功能特点获取所有省份名称集合。获取指定省份下的所有市区名称集合。获取指定省份及市区下的所有区县集合。三、公共接口public: //去除字符 static QString getValue(const QString &value); //读取文件返回数据 static QByteArray getFile(const QString &jsonFile); //根据不同的类型查询对应的结果 //type 0-原创 2021-11-19 18:09:02 · 882 阅读 · 0 评论 -
18通用类库-11城市天气示例-weather
一、运行效果二、功能特点指定任意城市获取天气信息。天气信息包括日期、低温、高温、天气、风力、风向。查询结果立即返回,包括接收到的数据。支持获取对应天气的图标值。自带演示demo省市县下拉联动选择。同时支持QtScript和QJson解析。支持指定标签直接显示当前天气。支持实时采集指定城市天气显示到标签。天气显示样式支持多种类型风格。可直接获取天气图形字体。三、公共接口public Q_SLOTS: //指定城市查询天气 cityName=上海 void que原创 2021-11-19 18:07:26 · 967 阅读 · 0 评论 -
18通用类库-10图形字体示例-iconhelper
【代码】18通用类库-10图形字体示例-iconhelper。原创 2021-11-19 18:06:06 · 1874 阅读 · 0 评论 -
18通用类库-09Base64编码-base64helper
一、运行效果二、功能特点图片转base64字符串。base64字符串转图片。字符转base64字符串。base64字符串转字符。后期增加数据压缩。Qt6对base64编码转换进行了重写效率提升至少200%。三、公共接口public: //图片转base64字符串 static QString imageToBase64(const QImage &image); static QByteArray imageToBase64x(const QImage原创 2021-11-19 18:04:42 · 1049 阅读 · 0 评论 -
18通用类库-08平滑曲线-smoothcurve
一、运行效果二、使用示例#include "frmsmoothcurve.h"#include "ui_frmsmoothcurve.h"#include "smoothcurve.h"#include "qpainter.h"#include "qdatetime.h"#include "qdebug.h"#define TIMEMS QTime::currentTime().toString("hh:mm:ss zzz")frmSmoothCurve::frmSmoothCurv原创 2021-11-19 18:03:28 · 4691 阅读 · 0 评论 -
18通用类库-07托盘图标-trayicon
一、运行效果二、功能特点可设置托盘图标对应所属主窗体。可设置托盘图标。可设置提示信息。自带右键菜单。三、公共接口public Q_SLOTS: //设置是否直接退出,如果不是直接退出则发送信号给主界面 void setExitDirect(bool exitDirect); //设置所属主窗体 void setMainWidget(QWidget *mainWidget); //显示消息 void showMessage(const Q原创 2021-11-19 18:02:19 · 4646 阅读 · 0 评论 -
18通用类库-06运行时间-saveruntime
一、运行效果二、功能特点可以启动和停止服务,在需要的时候启动。可以指定日志文件存放目录。可以指定时间日志输出间隔。可以单独追加一条记录到日志文件。日志为文本格式,清晰明了。三、公共接口public Q_SLOTS: //启动服务 void start(); //停止服务 void stop(); //新建目录 void newPath(); //初始化日志文件 void initLog(); //追加一条记录到日原创 2021-11-15 08:42:14 · 449 阅读 · 0 评论 -
18通用类库-05日志输出-savelog
一、运行效果功能特点支持动态启动和停止。支持日志存储的目录。支持网络发出打印日志。支持输出日志上下文信息比如所在代码文件、行号、函数名等。支持设置日志文件大小限制,超过则自动分文件,默认128kb。支持按照日志行数自动分文件,和日志大小条件互斥。可选按照日期时间区分文件名存储日志。日志文件命名规则优先级:行数》大小》日期。自动加锁支持多线程。可以分别控制哪些类型的日志需要重定向输出。支持Qt4+Qt5+Qt6,开箱即用。使用方式最简单,调用函数start()启动服务,stop(原创 2021-11-15 08:41:01 · 889 阅读 · 0 评论 -
18通用类库-04Ntp校时-ntpclient
一、运行效果二、功能特点可设置Ntp服务器IP地址。推荐用默认的阿里云时间服务器 ntp1.aliyun.com收到时间信号发出。时间精确到秒。三、公共接口public Q_SLOTS: //设置Ntp服务器IP void setNtpIP(const QString &ntpIP); //获取日期时间 void getDateTime();Q_SIGNALS: //收到时间返回 void receiveTime(const Q原创 2021-11-15 08:39:14 · 571 阅读 · 0 评论 -
18通用类库-03简繁转换-pinyin
一、运行效果二、功能特点简体繁体互相转换。支持字符串和字符转换。判断字符是否是汉字。汉字转拼音带音标。格式化拼音显示。将单个汉字转换为相应格式的拼音。将字符串转换成相应格式的拼音。三、公共接口public Q_SLOTS: //初始化 void initPath(const QString &path); void initDict(const QString &pinyin_one = "pinyin_one.txt",原创 2021-11-15 08:38:03 · 492 阅读 · 0 评论 -
18通用类库-02汉字转拼音-zhtopy
一、运行效果二、功能特点汉字转拼音。汉字转拼音简拼。汉字转拼音首字母。三、公共接口public: //载入拼音文件 void loadPY(const QString &fileName = "zhtopy.txt"); //汉字转拼音 QString zhToPY(const QString &chinese); //汉字转字母简拼 QString zhToJP(const QString &chinese);原创 2021-11-15 08:36:44 · 396 阅读 · 0 评论 -
18通用类库-01扁平风格-flatui
一、运行效果二、功能特点按钮样式设置。文本框样式设置。进度条样式。滑块条样式。单选框样式。滚动条样式。可自由设置对象的高度宽度大小等。自带默认参数值。三、公共接口public: //设置按钮样式 static QString setPushButtonQss(QPushButton *btn, //按钮对象 int radius =原创 2021-11-15 08:35:27 · 820 阅读 · 0 评论 -
17弹出窗体-07通用状态栏-bottomwidget
一、运行效果二、功能特点可设置软件标题。可设置软件版本。可设置版权所有。可设置当前用户、当前用户类型。可实时显示当前时间。可实时显示已运行时间。可设置每个部件是否可见。可设置整体字体和字号。三、公共接口public Q_SLOTS: //设置软件标题标签可见 void setLabTitleVisible(bool labTitleVisible); //设置版权所有标签可见 void setLabCopyrightVisible(bool lab原创 2021-11-14 09:48:49 · 506 阅读 · 0 评论 -
17弹出窗体-06通用遮罩层-maskwidget
一、运行效果二、功能特点可设置需要遮罩的主窗体,自动跟随主窗体位置显示遮罩面积。只需要将弹窗窗体的名称一开始传入队列即可,足够简单。可设置透明度。可设置遮罩层颜色。不阻塞消息循坏。三、公共接口public Q_SLOTS: //设置需要遮罩的主窗体 void setMainWidget(QWidget *mainWidget); //设置需要弹窗的窗体对象名称集合链表 void setDialogNames(const QStringList &原创 2021-11-14 09:46:58 · 606 阅读 · 0 评论 -
17弹出窗体-05屏幕拾色器-colorwidget
一、运行效果二、功能特点鼠标按下实时采集鼠标处的颜色。实时显示颜色值。支持16进制格式和rgb格式。实时显示预览颜色。根据背景色自动计算合适的前景色。三、核心代码void ColorWidget::showColorValue(){ if (!pressed) { return; } int x = QCursor::pos().x(); int y = QCursor::pos().y(); txtPoint->set原创 2021-11-14 09:45:41 · 446 阅读 · 0 评论 -
17弹出窗体-04屏幕截图-screenwidget
一、运行效果二、功能特点鼠标右键弹出菜单。支持全局截屏。支持局部截屏。支持截图区域拖动。支持图片另存为。三、使用示例#include "frmscreenwidget.h"#include "ui_frmscreenwidget.h"#include "screenwidget.h"frmScreenWidget::frmScreenWidget(QWidget *parent) : QWidget(parent), ui(new Ui::frmScreenWidget){原创 2021-11-14 09:44:22 · 643 阅读 · 0 评论 -
17弹出窗体-03GIF录屏-gifwidget
一、运行效果二、功能特点可设置要录制屏幕的宽高,支持右下角直接拉动改变。可设置变宽的宽度。可设置录屏控件的背景颜色。可设置录制的帧数。录制区域可自由拖动选择。三、使用示例#include "frmgifwidget.h"#include "ui_frmgifwidget.h"#include "gifwidget.h"frmGifWidget::frmGifWidget(QWidget *parent) : QWidget(parent), ui(new Ui::frmGifW原创 2021-11-14 09:43:00 · 524 阅读 · 0 评论 -
17弹出窗体-02无边框窗体-framelesswidget
一、运行效果二、功能特点可以指定需要无边框的widget。边框四周八个方位都可以自由拉伸。可设置对应位置的边距,以便识别更大区域。可设置是否允许拖动。可设置是否允许拉伸。V2.0同时支持Qt4-Qt6,亲测Qt4.7到Qt6.2。同时支持mingw、msvc、gcc等。同时支持windows、linux、mac。同时支持QMainWindow、QWidget、QDialog。使用方法极其简单,只需要将继承类修改即可。自动识别双击标题栏响应。无边框拉伸在windows下不抖原创 2021-11-14 09:41:47 · 693 阅读 · 0 评论 -
17弹出窗体-01通用控件移动-movewidget
一、运行效果二、功能特点可以指定需要移动的widget。可设置是否限定鼠标左键拖动。支持任意widget控件。三、公共接口public Q_SLOTS: //设置是否限定鼠标左键 void setLeftButton(bool leftButton); //设置是否限定不能移出容器外面 void setInControl(bool inControl); //设置要移动的控件 void setWidget(QWidget *widget);原创 2021-11-14 09:39:16 · 407 阅读 · 0 评论 -
16拓展控件Y-08综合示例-ycontrol
一、运行效果二、使用示例#pragma execution_character_set("utf-8")#include "frmycontrolall.h"#include "ui_frmycontrolall.h"#include "ycontrol.h"#include "qdatetime.h"#include "qdebug.h"frmYControlAll::frmYControlAll(QWidget *parent) : QWidget(parent), ui(new原创 2021-11-13 08:57:09 · 525 阅读 · 0 评论 -
16拓展控件Y-07表格控件-ytablewidget
一、运行效果二、完整代码#ifndef YTABLEWIDGET_H#define YTABLEWIDGET_H#include <QTableWidget>class QScrollBar;class YScrollBarV;class YScrollBarH;#ifdef qucclass Q_DECL_EXPORT YTableWidget : public QTableWidget#elseclass YTableWidget : public QTable原创 2021-11-13 08:56:07 · 484 阅读 · 0 评论 -
16拓展控件Y-06树状控件-ytreewidget
一、运行效果二、完整代码#ifndef YTREEWIDGET_H#define YTREEWIDGET_H#include <QTreeWidget>class QScrollBar;class YScrollBarV;#ifdef qucclass Q_DECL_EXPORT YTreeWidget : public QTreeWidget#elseclass YTreeWidget : public QTreeWidget#endif{ Q_OBJ原创 2021-11-13 08:55:03 · 474 阅读 · 0 评论 -
16拓展控件Y-05列表控件-ylistwidget
一、运行效果二、完整代码#ifndef YLISTWIDGET_H#define YLISTWIDGET_H#include <QListWidget>class QScrollBar;class YScrollBarV;#ifdef qucclass Q_DECL_EXPORT YListWidget : public QListWidget#elseclass YListWidget : public QListWidget#endif{ Q_OBJ原创 2021-11-13 08:53:55 · 683 阅读 · 0 评论 -
16拓展控件Y-04选项卡-ytabwidget
一、运行效果二、完整代码#include "ycontrol.h"void YControl::initStyle(QWidget *widget){ //设置样式表 QStringList list; //悬浮滚动条样式 int scrollWidth = 12; QString bgColor = QString("rgba(179,179,198,255)"); QString handleColor = QString("rgba(124原创 2021-11-13 08:52:32 · 1123 阅读 · 0 评论 -
16拓展控件Y-03滚动条-yscrollbar
一、运行效果二、完整代码#ifndef YSCROLLBARH_H#define YSCROLLBARH_H#include <QWidget>class QScrollBar;#ifdef qucclass Q_DECL_EXPORT YScrollBarH : public QWidget#elseclass YScrollBarH : public QWidget#endif{ Q_OBJECT Q_PROPERTY(int stepSin原创 2021-11-12 09:11:10 · 530 阅读 · 0 评论 -
16拓展控件Y-02微调框-yspinbox
一、运行效果二、完整代码#ifndef YSPINBOX_H#define YSPINBOX_H#include <QSpinBox>class QLineEdit;class QLabel;#ifdef qucclass Q_DECL_EXPORT YSpinBox : public QSpinBox#elseclass YSpinBox : public QSpinBox#endif{ Q_OBJECT Q_PROPERTY(int btn原创 2021-11-12 09:10:03 · 512 阅读 · 0 评论 -
16拓展控件Y-01下拉框-ycombobox
一、运行效果二、使用示例#pragma execution_character_set("utf-8")#include "frmycombobox.h"#include "ui_frmycombobox.h"#include "qdebug.h"frmYComboBox::frmYComboBox(QWidget *parent) : QWidget(parent), ui(new Ui::frmYComboBox){ ui->setupUi(this); ui-原创 2021-11-12 08:59:30 · 366 阅读 · 0 评论 -
15拓展控件X-07动态堆栈窗体-xstackwidget
一、运行效果二、功能特点可设置窗体切换间隔。可指定索引位置插入窗体。支持插入和移除窗体对象。可设置当前窗体索引或者对象。三、公共接口public Q_SLOTS: //设置动画间隔时间 void setDuration(int duration); //设置当前窗体索引 void setCurrentIndex(int index); //设置当前窗体对象 void setCurrentWidget(QWidget *widget);原创 2021-11-12 08:58:11 · 408 阅读 · 0 评论 -
15拓展控件X-06自定义下拉框-xcombobox
一、运行效果二、功能特点可设置下拉框选项高度。可设置下拉框选项宽度。可设置是否自动调整下拉框选项宽度,根据选项宽高自动调整。三、公共接口public Q_SLOTS: //设置下拉选项的宽度 void setItemWidth(int itemWidth); //设置下拉选项的高度 void setItemHeight(int itemHeight); //设置下拉选项是否自动调整宽度 void setAutoWidth(bool autoW原创 2021-11-12 08:56:33 · 386 阅读 · 0 评论 -
15拓展控件X-05自定义进度条-xprogressbar
一、运行效果二、功能特点可设置背景颜色。可设置进度颜色。可设置圆角角度。可设置进度是否圆角。可设置是否自动圆角。可设置渐变颜色进度。精准计算圆角角度,解决了QSS中border-radius当进度小于圆角角度出现方形的BUG。三、公共接口public Q_SLOTS: //设置进度画刷+进度颜色+背景颜色+文字颜色 void setValueBrush(const QBrush &valueBrush); void setValueColor(con原创 2021-11-11 09:03:05 · 354 阅读 · 0 评论 -
15拓展控件X-04显示值滑动条-xslider
一、运行效果二、功能特点可设置高度。可设置正常颜色。可设置滑过的颜色。可设置手柄边框颜色。可设置手柄颜色。可设置文字颜色。单击自动切换到按下处位置。对应值显示在手柄圆圈处。三、公共接口public Q_SLOTS: //设置是否显示值 void setShowText(bool showText); //设置滑动条高度 void setSliderHeight(int sliderHeight); //设置正常颜色 void se原创 2021-11-11 09:01:57 · 509 阅读 · 0 评论 -
15拓展控件X-03视频终端面板-xlistwidgetvt
一、运行效果二、功能特点可设置视频终端个数。可设置文字颜色、背景颜色。可设置鼠标选中文字颜色、鼠标选中背景颜色。可设置鼠标悬停文字颜色、鼠标悬停背景颜色。可设置标题、标题颜色。可设置节点的最小宽度高度。可设置节点字符串集合。可设置节点个数,自动生成节点。可设置滚动条位置左侧右侧、宽度、颜色。三、公共接口public Q_SLOTS: //设置文字颜色 void setTextColor(const QColor &textColor); //设置原创 2021-11-11 09:00:47 · 302 阅读 · 0 评论 -
15拓展控件X-02视频源面板-xlistwidgetvs
一、运行效果二、功能特点可设置视频源个数。可设置文字颜色、背景颜色。可设置鼠标选中文字颜色、鼠标选中背景颜色。可设置鼠标悬停文字颜色、鼠标悬停背景颜色。可设置标题+标题颜色。可设置节点的最小宽度高度。可设置节点字符串集合。可设置节点个数,自动生成节点。可设置滚动条位置左侧右侧、宽度、颜色。三、公共接口public Q_SLOTS: //设置文字颜色 void setTextColor(const QColor &textColor); //设置背原创 2021-11-11 08:59:28 · 1358 阅读 · 0 评论 -
15拓展控件X-01高级列表面板-xlistwidget
一、运行效果二、功能特点可设置会议室个数。可设置文字颜色、背景颜色。可设置鼠标选中文字颜色、鼠标选中背景颜色。可设置鼠标悬停文字颜色、鼠标悬停背景颜色。可设置右键菜单单个菜单禁用启用。可设置节点的最小宽度高度。可设置节点字符串集合。可设置节点个数,自动生成节点。可设置滚动条位置左侧右侧、宽度、颜色。三、公共接口public Q_SLOTS: //设置文字颜色 void setTextColor(const QColor &textColor);原创 2021-11-11 08:58:15 · 349 阅读 · 0 评论 -
13视频监控-04视频监控窗体-videowidget
一、运行效果二、功能特点可设置边框大小。可设置边框颜色。可设置两路OSD标签。可设置是否绘制OSD标签。可设置标签文本或图片。可设置OSD位置 左上角、左下角、右上角、右下角。可设置OSD风格 文本、日期、时间、日期时间、图片。自定义半透明悬浮窗体,一排按钮。悬浮按钮可自定义设置,包括背景颜色+按下颜色。发送信号通知单击了哪个悬浮按钮。能够识别拖进来的文件,通知url。提供open close pause等接口。三、公共接口public: //标签格式 e原创 2021-11-10 15:40:37 · 1012 阅读 · 0 评论 -
13视频监控-03视频回放控件-videoplayback
一、运行效果二、功能特点可设置回放控件部件的边距、间距、左侧文字宽度。可设置通道1-4的文字。可设置线条宽度、线条颜色。可设置文字颜色、背景颜色。可设置顶部时间标尺文字颜色、背景颜色。可设置4个通道背景颜色、数据颜色。可设置4个通道的数据集合,每个视频数据可以多个分段。自由拓展度极高。三、公共接口public Q_SLOTS: //设置边距+间距+左侧宽度 void setMargin(int margin); void setSpacing(int sp原创 2021-11-10 15:39:13 · 744 阅读 · 0 评论 -
13视频监控-02视频监控画面-videopanel
一、运行效果二、功能特点可设定视频通道数量。支持双击最大化再次双击还原。支持4/6/8/9/13/16/25/36/64等通道布局。内置了选中边框高亮等样式。通用的视频通道布局盒子类,方便拓展其他布局。三、完整代码#ifndef VIDEOPANEL_H#define VIDEOPANEL_H/** * 视频监控画面控件 整理:feiyangqingyun(QQ:517216493) 2019-04-11 * 1. 可设定视频通道数量。 * 2. 支持双击最大化再次双击还原原创 2021-11-10 15:31:01 · 871 阅读 · 0 评论 -
13视频监控-01视频监控布局-videobox
一、运行效果二、功能特点将所有通道切换处理全部集中到一个类。通用整数倍数布局切换函数,可方便拓展到100、255通道等。通用异形布局切换函数,可以参考进行自定义异形布局。通道布局切换发出信号通知。可控每种布局切换菜单是否启用。支持自定义子菜单布局内容。支持设置对应的菜单标识比如默认的通道字样改成设备。三、公共接口public Q_SLOTS: //设置当前画面类型 void setVideoType(const QString &videoType);原创 2021-11-10 15:28:20 · 889 阅读 · 0 评论