自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (19)
  • 收藏
  • 关注

原创 QComboBox使用代理设置鼠标悬停提示

Qt中原生的ComboBox控件的下拉选项是没有鼠标悬停提示(ToolTip)功能,那么想要实现提示功能,就需要对控件进行加工,可以通过重写代理类(QStyledItemDelegate)来实现功能。

2024-02-25 20:20:27 272

原创 Windows11安装Linux子系统,并实现服务自启动,局域网访问,磁盘挂载

Windows安装Linux子系统,并实现开机启动

2023-08-09 22:36:33 3017

原创 QT之动态加载下拉框(QComboBox)

这两天遇到一个需求,需要下拉选项中动态加载一些数据,实现之后感觉挺有意思,特此记录一下。

2023-05-22 21:38:35 1971 1

原创 打造属于自己的私人云笔记

现在市面上支持私有化部署的云笔记选择不多,而且大多数只支持mackDown语法,不支持word等其他文件的编辑,基于此需求,能不能有一款笔记软件,支持多平台,能够理论上编辑任何文件,并且支持数据私有保存,经过长期的试用各种云笔记和总结。决定使用私有云盘+webdav协议的方式实现。

2023-05-07 23:42:46 2913

原创 QT设置窗口阴影

简单解释一下,在widget的内套一个QFrame,然后将所有控件拖拽到QFrame中,对整个QWidget进行布局,预留一定的边距(具体多少根据自己的场景定),然后设置顶层widget背景透明,QFrame背景白色。窗口加上阴影能够使窗口显得更加立体,实现方式也很简单,采用Widget或Dialog嵌套frame的形式实现,具体实现如下。最后在构造函数中给QFrame设置阴影即可。

2023-05-06 21:44:12 1272

原创 QPainter再指定区域内绘制文本并自动换行

在自定义绘制控件时,经常遇到文本超过绘制区域的情况,容易想到的办法显示部分文字和换行,一下介绍如何实现换行。

2023-04-20 14:54:42 1953 2

原创 记录收集整理的QT项目文件.pro解析

参考:https://blog.csdn.net/wzz953200463/article/details/124107110。

2023-03-15 15:17:15 90

原创 Windows开启/关闭admin账户

记录windows开启/关闭admin账户

2022-11-28 20:12:02 277

原创 Windows下使用bat脚本创建桌面快捷方式

Windows下使用bat脚本创建桌面快捷方式。

2022-10-19 20:41:50 2341

原创 QT combobox下拉从树中选择节点

QT combobox下拉从树中选择节点

2022-08-18 17:52:08 1505

原创 QDockwidget悬浮自定义(最小化,最大化),关闭自动停靠

简介某些软件需要用到QDockwidget停靠窗口,这时可能就需要有一个需求,在点击QDockWidget的悬浮按钮后让窗口指定一个大小,并且显示在桌面中间,点击关闭悬浮后的关闭按钮后,让悬浮窗口自动停靠到原来位置https://www.cnblogs.com/luoxiang/p/14277269.html...

2022-04-24 17:48:12 3417

原创 QSplitter设置比例

//方法一,将布局中的两个控件设置为0:1ui->splitter->setStretchFactor(0,0);ui->splitter->setStretchFactor(0,1);//方法二,将两个部件设置为窗口的1/3及2/3宽度ui->splitter->setSizes(QList<int>()<<1/3*width<<2/3*width);上述两种方法我都试过,都可以很好的设置比例,网上有说第一种设置没有效果,

2022-04-21 10:46:15 3924 3

原创 QGraphicsView创建悬浮按钮

简介QGraphicsView

2022-03-08 16:52:42 1916 5

原创 QT工程文件(pro/pri)常用配置

//指定生成可执行文件名称TARGET = xxx//指定可执行文件生成路径DESTDIR = $$PWD/xxx//引用pri模块include($$PWD/xxx.pri)//添加头文件搜索路径INCLUDEPATH += $$PWD/xxx//添加库文件搜索路径DEPENDPATH += $$PWD/xxx//指定软件图标,必须为ico图标RC_ICONS = log.ico//判断当前是debug模式还是release模式CONFIG += debug_and_relea

2022-01-26 16:57:47 491

原创 Qt程序一键打包脚本

@REM 源代码路径~dp0表示脚本所在位置,不一定需要,若存在额外需要拷贝得文件可设置set DIR=%~dp0额外路径 @REM目标路径,及打包所产生得文件夹所存放得路径set SOURCEDIR=%userprofile%\Desktop\test@REN生成执行文件路径,及拷贝exe从文件set BINPATH=E:\project\ccpclient\ccpc\bin\release\@REM插件路径set DLLPATH=%DIR%\src\libs\plugins_r@REM

2022-01-26 16:47:42 625

原创 Flask项目部署到Ubuntu上

前期准备将在本地开发好的Flask项目打包,发送到云主机上,可以使用xftp等传输工具放到远程主机上。安装python虚拟环境为python3安装pipsudo apt install python3-pip#为python安装pip 使用时要输入pip32.安装virtualenvsudo pip install virtualenvsudo pip install virtualenvwrapper3.配置环境变量#在~/.bashrc末尾添加下面两句export WORK

2022-01-24 18:27:59 4812 4

原创 QT读写粘贴板

QString source = ui->textEdit_code->toPlainText();QClipboard *clipboard = QApplication::clipboard();//获取系统剪贴板指针QString originalText = clipboard->text();//获取剪贴板上文本信息QMimeData *data = clipboard->mimeData(); //获取mimeData数据QImage image = clipbo

2021-11-24 15:23:55 1055

原创 Qt之属性树

在QT设计师中有一个很好用的部件属性设置窗口,qt却没有提供此控件也没有对应的例子,后来发现若安装qt时选择了安装源码,可以在源码中找到,在源码中搜索qtpropertybrowser即可。由于之前不知道qt源码中有qtpropertybrowser的源码,因此自己实现了一个,效果如下思路:控件使用QTreewidget,设置属性的控件使用委托代理完成,根据不同的类型创建不同的代理控件,checkBox这类之间勾选的控件使用setItemWidget()方法设置到对应的列中,当属性被改变时通过信

2021-07-30 09:40:07 591

原创 Qt之QTreeView美化

先写一点吧,后面按需要在补充QHeaderView::section{ border:none;}QTreeView{ show-decoration-selected:1; alternate-background-color:rgb(233,245,252); background:rgb(255,255,255); gridline-color:#242424; font-size:16px;}/*设置item行高*/QTreeView

2021-07-29 11:34:31 1541

原创 QT重写QSortFilterProxyModel实现多列数据过滤

在QTableView中可以使用QSortFilterProxyModel来过滤model的数据,可以通过setFilterKeyColumn(int colnum)设置需要过滤的列,当设置为-1时则过滤对象为所有列,但是此种方式只要某一列中有符合条件的数据就会被显示出来因此我们可以重写QSortFilterProxyModel的filterAcceptsRow(int source_row, const QModelIndex &source_parent)方法实现同时过滤指定多列的数据效果如

2021-07-23 14:12:55 3023 1

原创 Deepin(UOS使用linuxdeployqt打包qt程序

一、编译linuxdeployqt默认你已经安装好Qt creatorlinuxdeployqt下载地址下载上图中的任意一个代码,解压(以tar.gz为例子)tar -zxvf xxx.tar.gz进入linuxdeployqt文件夹cd linuxdeployqt修改tools/linuxdeployqt/main.cpp,注释掉判断版本的代码vim tools/linuxdeployqt/main.cpp需要注释的代码如下 /*if (strverscmp (glcv,

2021-06-24 13:15:15 979 1

原创 Qt链接MySQL遇到的坑

简介环境:Qt 5.14.2+MySQL8.0.25(ZIP版)+msvc2017_64编译器Qt从5.12版本后不在自带MySQL数据库的连接驱动,需要手动编译,编译之前你的先安装MySQL,和安装qt源码。默认你已经安装好了MySQL和安装qt源码。一、编译进入qt安装目录,然后找到Src\qtbase\src\plugins\sqldrivers\mysql,我的路径为:C:\Qt\Qt5.14.2\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql

2021-05-21 17:45:57 1069 11

原创 QT使用系统默认程序打开文件

QDesktopServices::openUrl(QUrl::fromLocalFile(filepath));

2021-05-21 17:10:24 1304 1

原创 QT TreeView自定义Model 实现自定义过滤筛选数据

简介通常我们使用QSortFilterProxyModel过滤数据时,只会过滤树的父节点,符合条件的子节点不会被显示出来,因此我们需要继承QSortFilterProxyModel,重写filterAcceptsRow函数可以实现符合条件的子节点也显示出来。.h#include <QSortFilterProxyModel>class SelectFileSortFilterProxyModel : public QSortFilterProxyModel{ Q_OBJECT

2021-04-21 10:27:32 3190 4

原创 使用Cython提升python运行效率

简介我们都知道python是容易上手的,写起来比较方便,但是这是牺牲了程序的运行速度,而我们在写程序的过程中有的关键功能又必须注重效率。这时候我们可以借助cython来实现关键部分的代码,使程序的运行效率得到提升。先看一个例子:#.pyimport pyximportpyximport.install()import testimport timenum = 0start = time.time()for i in range(20000): for i in range(20

2021-02-01 16:21:23 399 2

原创 VS+QT调用python脚本

简介python 丰富的模块文件使得python在完成一些功能时非常的方便,在工程中调用python脚本使得效率大大提升。一、环境配置python环境配置要想在vs中调用python脚本,先要将python的解释环境配置到vs工程中。在vs中新建qt工程。然后将python解释器环境拷贝到工程目录下。得到python解释器环境的方式有很多:复制安装好的整个python环境使用pycharm等三方工具创建虚拟环境从安装好的python环境中提取所需要的环境本文采用第三中方式复制图中三

2021-01-25 17:02:29 2172 8

原创 QT自定义鼠标样式

//在窗口中调用鼠标样式使用的是setCursor函数//函数原型setCursor(const QCursor &cursor)Qcursor样式,摘自Qt帮助文档除此之外我们还能使用图片来自定义素表样式QPixmap pix(imagepath); QSize size(10,10);//设置图片大小pix = pix.scaled(size,Qt::keepAspectRatio);setCursor(QCursor(pix));...

2021-01-19 16:52:33 449

原创 Qt之模型树节点状态恢复(刷新后保持节点展开状态)

简介在实际用途中,我们需要在Treeview上添加节点后需要保持树的展开状态,但是qt的model刷新后,Treeview会自动收起,因此需要自己记录树的状态,并在数据刷新后恢复原来的展开状态实现//先记录下节点的展开状态void MainWindow::GetExpandNode(QModelIndex root){ int row = m_model->rowCount(root); for(int i=0;i<row;i++) { QMod

2021-01-14 18:58:02 1357 1

原创 基于QSlider实现DoubleSlider

由于需求封装了支持小数的滑条,如图头文件#ifndef DOUBLESLIDER_H#define DOUBLESLIDER_H#include <QWidget>#include <QSlider>class DoubleSlider : public QSlider{ Q_OBJECTpublic: explicit DoubleSlider(QWidget *parent = nullptr); ~DoubleSlider();

2020-12-28 09:08:33 1321 1

原创 Qt树(QTreeView,QTreeWidget)非递归遍历方式

记录一下void MainWindow::getItemNonRecursive(){ QList<QTreeWidgetItem*> items; //先获取顶层节点 int childcount = ui->treeWidget->topLevelItemCount(); for(int i = 0; i < childcount; i++) { items << ui->treeWidget-&

2020-11-12 16:43:26 2491 1

原创 Qt之键盘事件(捕获组合键)

简介今天在做快捷键需求时,发现了一个问题,qt的键盘事件不能捕获多个按键按下.即便是在使用modifiers()时,也只能获得类似于shfit+x,ctrl+c,alt+y等等之类的快捷键,对于shift+x+c诸如此类更多的组合就无能为力的.于是各种网上查找资料即查阅文档得知,qt的键盘事件机制一次每次只能获取一个按键(排除shift,alt,ctrl等特殊按键),因此在需要获取多个按键按下或者同时按下时,就需要保存每个按下的按按键,在弹起时在删除弹起的按键.值得注意的是当按键一直被按下时也会出发k

2020-11-11 11:09:28 5186 4

原创 QT之TreeView节点拖动

话不多说,先上图在自定义model中实现dropMimeData、supportedDropActions、mimeData三个函数。virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override;Qt::DropActions supportedDropActions() const overrid

2020-11-03 14:55:41 4350 2

原创 Qt之程序启动界面

简介Qt本身提供了一个用来做程序启动界面的类QSplashScreen,在实际使用中发现使用这个类做静态的程序启动界面时没有问题,但用来做动态的程序启动界面时就会出现问题了,即使是播放一个gif动画也会存在不完美的地方。例如想要使用QSplashScreen播放gif图片做启动界面时,可能会写这样一段代码: QPixmap pix("1.gif"); QSplashScreen splash; splash.setPixmap(pix); QLabel label(&splash);

2020-10-16 15:16:15 1971

原创 QT之动态进度条

简介前两天需要接到一个需求需要做一个好看的进度条,在网上搜了一圈发现要不然就是不符合我的需求要不然就是没有源码,最后找到一个大佬写的有部分源码的,自己也折腾了一个(原文链接)。...

2020-09-30 09:08:53 4147 1

原创 Qss之QTabWidget美化

直接上代码吧/*QTabWidget*/QTabWidget::pane{border:none;}QTabWidget::tab-bar { left: 5px;}QTabBar::tab { background: gray; border: 2px solid #C4C4C3; border-bottom-color: #C2C7CB; border-top-left-radius: 4px; border-top-righ

2020-09-25 12:48:49 4423 3

原创 Qt之简易版网络调试助手

简述qt中为网络编程提供了一个QtNetwork类,使用QtNetwork可以实现ftp文件传输,基于tcp/ip协议的客户端和(服务端)开发等等,本文基于QtNetwork中的tcp/ip协议实现的简单版网络调试助手。使用模块时需要在pro工程文件中加入:QT += network...

2020-06-30 10:06:19 3859 2

原创 Qt之简约按钮导航栏

简介如图所示,点击不同的按钮,通过update()刷新,重绘界面,实现进度更新,点击某个按钮时,也可以定以槽函数,来处理不同的事件。源码通过paintEvent来重绘界面void Topwidget::paintEvent(QPaintEvent *even){ QPainter painter(this); int x=10; int y=this->height()-20; QPen pen; pen.setColor(QColor(0,175,

2020-06-24 09:49:42 1997

原创 QProcess调用外部程序阻塞等待问题解决

QProcess调用外部程序阻塞等待问题解决简介第一种第二种简介在使用QProcess调用外部程序时,可能会遇到两种场景:1.调用起来之后就不管,直接运行后面的代码2.调用起来后需要等待外部程序执行完成,在继续运行下面的代码第一种这种比较简单,新建一个进程设置好参数就可以了QProcess *openProcess=new QProcess(this); //新建一个process进程//绑定process进程完成信号,垃圾回收connect(openProcess, QOverload&

2020-06-12 14:56:16 6968 5

原创 QT使用正则表达式过滤LineEdit输入(其他控件同理)

介绍经常会有需要限制输入框中只能输入数字或者浮点数的需求,使用正则表达式能够快速的解决这些问题。 //限制lineedit输入 QRegExp rx("[1-9][0-9](\\.\\d{1,2})?$"); /*功能:限制输入小数点前两位小数点后两位的浮点数,也可以只输入两位整数 */ QRegExpValidator *pReg = new QRegExpValidator(rx, this); ui->lineEdit_Interpolation-&

2020-06-05 10:49:52 897 1

原创 Qt之Tableview之定义数据结构

Qt之Tableview之定义数据结构tablewidgetmodel.h#ifndef TABLEWDIGETMODEL_H#define TABLEWDIGETMODEL_H#include <QAbstractTableModel>#include <QStringList>struct mydata{ int number; QString name; int age;};class TableWdigetmodel : publ

2020-06-02 20:12:28 865

comboBoxByTree.zip

使用树控件作为ComboBox的下拉选项

2023-06-30

qt之动态加载下拉框(QComboBox)

基于QComboBox,点击特定下拉选项,可以实现动态获取数据并显示动态加载图片

2023-05-22

基于webDAV协议的网盘文件编辑工具

基于webDAV协议的网盘文件编辑工具

2023-05-07

propertyTree.zip

qt属性设置控件,类似qt设计师右下角属性设置部件

2021-07-30

TableViewDemo.zip

QTableview自定义model支持动态添加删除,表头排序,过滤

2021-07-23

cython.zip

cython.zip

2021-02-01

CPyTest.zip

vs2019+Qt调用python脚本

2021-01-20

TreeViewModel_new.zip

自定义TreeModel,并且能够在数据刷新后维持Treeview的展开状态

2021-01-14

DoubleSlider.zip

DoubleSlider.zip

2020-12-28

Qt捕获组合按键实现

qt的键盘事件不能捕获多个按键按下.即便是在使用modifiers()时,也只能获得类似于shfit+x,ctrl+c,alt+y等等之类的快捷键,对于shift+x+c诸如此类更多的组合就无能为力的.本案例中提供了一种捕获shift+a+b...组合键的方法

2020-11-10

QTreeView实现节点拖动.zip

此例子通过自定义Treemodel和treeitem实现了Qtreeview的节点可以拖动到另一节点下,可以用来实现数据分组等操作。

2020-11-03

QT实现程序启动界面

使用QProcess实现的程序启动界面,支持播放gif动画,支持静态图片,支持多张图片切换,程序启动后自动退出

2020-10-16

QT之动态进度条

继承qt自带的QProgressbar完成的动态进度条,主要提供一个思路,后续可以在自己完善定制,详情见https://blog.csdn.net/weixin_43435307/article/details/108879076

2020-09-30

tophbarwidget.zip

点击不同的按钮,通过update()刷新,重绘界面,实现进度更新,点击某个按钮时,也可以定以槽函数,来处理不同的事件。重新封装了模块,添加了接口

2020-07-07

notitle.zip

隐藏qt自带的标题栏,自定义标题栏,实现无边框窗口,可改变窗口大小,可移动,窗口最大化时支持拖拽还原。

2020-06-30

NetWork.zip

qt中为网络编程提供了一个QtNetwork类,使用QtNetwork可以实现ftp文件传输,基于tcp/ip协议的客户端和(服务端)开发等等,本文基于QtNetwork中的tcp/ip协议实现的简单版网络调试助手。

2020-06-29

topwidget.zip

点击不同的按钮,通过update()刷新,重绘界面,实现进度更新,点击某个按钮时,也可以定以槽函数,来处理不同的事件。

2020-06-24

zdyModel.zip

Tabelview自定义model实现显示自定义的数据结构。

2020-06-02

Mynotepad2.zip

基于Qt的简单记事本,使用了Qtabwidget,QTextEditQTextEdit控件实现了文件的基本操作,适合新手,后续有时间可能更新敬请期待....

2020-04-20

Molddaili.zip

通过model和tableview配合使用能够很好的管理数据,本例子实现了在tableview中显示自定义按钮,及数据过滤等

2020-04-17

mplayer移植.rar

基于Linux系统下的mplayer移植到arm架构的开发板上,包含文档和源码包。

2019-07-05

基于arm开发板的智能家具控制系统.zip

db:一个基于unix服务端的数据库程序,能够将客户端发来的数据插到数据库,可以将查询到的结果发送给客户端 smart: tcp服务端:网络接收客户端发来的命令 智能家居系统终端:登录,播放音乐,采集传感器数据实时显示 unix客户端:将传感器采集的到的数据发送给数据库程序,接收数据库程序发来的查询结果将结果转发给网络客户端

2019-07-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除