自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(156)
  • 资源 (1)
  • 收藏
  • 关注

原创 记录重要的网站

一、UI逼格高,动态图比较高清(GIF)二、查找问题Stack Overflow最大编程社区,可以找到绝大多数问题三、技术1.web、HTML、JS、CSS文档,界面舒适,适合基础2.OpenGL学习网站,支持中文

2020-08-04 20:09:04 409

原创 QT 工作遇到的小问题

1.QT中清空布局中所有小控件addWidget后,如果使用removeWidget,界面上的小控件不会立即消失,可以进行如下操作QRadioButton *button = new QRadioButton("血刀老祖");button->setParent(nullptr);

2020-06-30 15:44:02 1735

原创 QT 常用功能集合

一、QT 获取秒级、毫秒级时间戳QT 手机号正则匹配QT 使某个窗口或者widget不能获得焦点QT 常用样式代码(常规、悬停、点击、不可点击) + 字体、边框、背景、字体、圆角、边距、渐变QT 设置窗口:常用setAttribute 、setWindowFlags属性二、QT 新式信号槽写法QT 实现半透明遮罩效果QT 实现窗口四周阴影QT 实现拖拽事件...

2019-12-30 15:42:50 629

原创 Linux 不同架构、不同系统的问题

我的程序在通过sudo,去安装程序安装包时,总会在用户目录下,新建一个root所属组的文件,导致程序后续都无法使用该配置文件。就是在麒麟v10下,让文件生成到根目录,不影响到家目录用户。写一个最直接的demo,可以说明根本的原因,当前在家目录下,麒麟v10操作系统的。因为在QSettings中,如果不指定确切的用户,它默认创建的目录会使用。如果未开启窗口特效功能,那么程序中如果插入包含透明背景的图片,会显示黑色。环境变量为用户目录,而其他操作系统的该变量为。所获取的路径,该函数在linux下是通过。

2024-02-26 10:12:59 358

原创 QT Linux下无法使用CTRL+ALT+P快捷键,不生效

xcb是Linux下的底层系统库,所有的鼠标,键盘事件都从这个库收集上来,qt会对所有的事件进行转换为qt内部定义的事件,然后分发给应用程序。(6)不想升级这个程序,我直接卸载了,然后通过xev检测,发现可以抓取到该快捷键,通过调试qt 程序,发现,tryShortcut函数可以正常获取到该事件了,但是应用程序依然无法使用。后,键码值是16777219,理论上应该是80,因为上一个键是O,是正常的,其值是79。下,使用该快捷键无效,虽然使用的是一套代码,但在不同平台下某些插件的实现还是有差异的。

2024-02-05 12:00:45 697

原创 QT 检测是否有网络

二、最后在加个定时器,就算没有等到网络请求返回,超时后也会退出事件循环,可以避免网络请求长时间阻塞主线程。一、模拟一个请求去判断是否有网,此处需要加个事件循环,实现阻塞等待网络请求的完成。

2024-01-12 15:48:50 696

原创 QT c++和qml交互实例

(5)实现一个简单的列表框(ListView),相当于QListWidget,定时请求网络数据,展示学生信息,将view和model进行分离,降低界面与数据的耦合。(4)展示一个简单的堆栈窗口(SwipeView),相当于QStackedWidget,管理多个子窗口页面。(2)qwidget工程如何加载qml工程,如何加载自己实现的qml tool库。(3)创建无边框qml界面,支持拖拽,窗口的缩小与展开,界面的分段实现。(6)点击学号、年龄,实现了列表数据的排序。

2024-01-06 15:18:06 775

原创 C++ fstream 处理文件读写示例

使用C++标准库的类,有三种方式可以处理文件读写,包括文本文件和二进制文件。当前场景每行每行读取,当然也可以read自定义读取。

2024-01-04 20:25:06 425

原创 QT 高DPI解决方案

【代码】QT 高DPI解决方案。

2024-01-02 17:41:24 688

原创 QT linux下使用Qt Creator调试附加进程,加快调试

使用附加进程调试要比直接调试速度要快,但是不足之处时,已经执行的代码可能不会再触发,比如程序初始化只执行一次的代码,可以在main函数入口Sleep一下,再此期间,赶紧将调试附加到进程上。或者老办法直接调试。

2023-12-07 15:08:44 752

原创 常用命令(Linux、Git、g++、gdb、sql)

【代码】常用命令(Linux、Git、g++、gdb)

2023-09-12 16:23:08 487

原创 QT Linux和Windows快捷方式不一致的问题

不同平台下,常见操作的快捷键。

2023-05-16 11:26:03 669

原创 Qt中Windows与Linux不同的实现方式

windows与linux不同使用方法,如打开系统内置文件夹框

2023-04-01 17:18:28 880

原创 Windows & Linux 实用技巧

desktop是一种桌面快捷方式文件,用户可以双击文件打开。也可以使用命令行的方式打开。

2022-10-25 11:40:42 1317

原创 多线程的同步与互斥

当多个线程操作同一变量时,下列程序会出现负数的情况。

2022-10-24 12:13:50 99

原创 QT 利用空闲时间(OnIdle)处理work

QAbstractEventDispatcher允许将自己的事件插入到Qt的事件循环中。它也允许监视事件循环。每个需要使用空闲时间的widget,注册当前QObject,添加到总的队列中。当空闲时间到达时,循环处理队列中的widget,向每一个widget发送idlewidget事件。所谓空闲时间(idle time),是指系统中没有任何消息等待处理的时间。比如某个时刻,没有碰触键盘和鼠标,那么,系统就处于所谓的空闲时间。WM_ENTERIDLE消息,发送到进入空闲状态的模式对话框或菜单的所有者窗口。

2022-10-17 17:10:55 922

原创 QT 界面在linux下调试时卡死的问题

xnest是一个虚拟的X服务端,其窗口可以运行界面程序,电脑在调试弹窗时界面容易冻住,失去了焦点,只有鼠标可以移动,这时候就可以使用这个工具。

2022-09-27 11:30:08 1026

原创 QT 基本控件、类记录及注意事项

【代码】QT 基本控件记录。

2022-09-15 11:16:15 188

原创 Ubuntu 使用XCB

xcb的使用示例

2022-06-23 20:31:25 1167

原创 Ubuntu 编译XCB源码

ubuntu编译xcb源码

2022-06-23 19:42:35 1092

原创 Ubuntu 编译Qt 6.0.0

ubuntu 编译 qt 6.0.0

2022-06-17 16:03:40 760

原创 Ubuntu 缺库

缺少libtinfo.so.5库

2022-06-16 18:00:11 551

原创 ubuntu xrdp密码正确依然登录失败的问题

文章目录一、报错二、解决一、报错1、xrdp 界面报错:login failed for display 02、cat /var/log/xrdp-sesman.log日志中报错:[ERROR] X server -- no display in range is available二、解决(1)xrdp用了一段时间,突然有一天无法登录,输入正确的命令也不行(2)起初是发现工作目录下有隐藏的相关xrdp日志,怀疑是达到连接数的上线,但是删除并重启后并未解决(3)通过/etc/xrdp/sesm

2022-05-24 12:38:39 7701 1

原创 QT QFileSystemModel显示文件目录树

一、代码示例// m_outDir,需要打开的目录路径void MainDialog::showDirTree(){ if (!pFileModel ) QFileSystemModel *pFileModel = new QFileSystemModel(); pFileModel ->setRootPath(m_outDir); // 绑定model,并设置索引 ui->treeView->setModel(pFileModel);

2022-05-19 17:49:43 1656

原创 QT 使用QMenu创建菜单(示例)

文章目录一、效果图二、代码示例一、效果图二、代码示例QMenuBar *bar = new QMenuBar(this); ui->topLayout->addWidget(bar); QMenu *pFileMenu = new QMenu(QStringLiteral("文件"), this); QAction *pOpenAction = new QAction(QStringLiteral("打开"), this); QAction *pSave

2022-05-19 17:30:42 1324

原创 QT XML文件格式化(美化) & 反格式化(压缩)

一、格式化(美化)通过QXmlFormatter进行格式化// 传入xml文件路径QString MainDialog::formatText(const QString &path){ if (path.isEmpty()) return ""; QXmlQuery query; query.setQuery(QString("doc('%1')").arg(path)); QByteArray outArray; QBuffer

2022-05-19 17:01:24 976

原创 QT qss设置滚轮样式不生效的问题

文章目录一、原因以及现象图1、正确样式2、错误样式二、滚轮代码一、原因以及现象图滚轮的样式写到了当前QTextEdit的控件里,如果其父控件自定义了任意样式,那么当前QTextEdit样式就会显示异常,应该将滚轮样式写到父控件上。1、正确样式2、错误样式二、滚轮代码QScrollBar::sub-line:vertical { height: 0px; subcontrol-position: top; subcontrol-origin: margin;backgr

2022-05-19 16:35:32 765

原创 wsl安装xrdp(可视化界面并远程),解决闪退、黑屏

window11 安装linux子系统(一键安装)并连接到vs code操作之前可以先换源// 编辑sudo vim /etc/apt/sources.list// 替换为以下内容deb http://mirrors.163.com/ubuntu/ focal main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ focal-security main restricted universe multiver

2022-05-13 13:33:11 10953 4

原创 QT 修改图片透明度

一、代码MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow){ ui->setupUi(this); QString name = "D:/closechat.png"; QImage img(name); QPixmap resultImage = QPixmap::fromImage(img); QPixmap sou

2022-03-29 17:34:40 1445

原创 jenkins 批处理(bat)执行devenv提示许可证已到期,执行总是失败

一、问题jenkins配置好以后,打包脚本一直运行的好好的,突然有一天打包失败了,devenv提示vs 许可证已到期,于是打开vs,登录了自己的微软账户,获得了授权,然后运行jenkins进行打包,发现控制台输出还是提示许可证已到期。于是赶快检查是不读取到vs的版本号不对,发现也正常,本地去运行这个脚本也正常,可以正常编译,但jenkins还是提示错误。然后又将当前本地时间往前改了一个月,发现总算可以编译了,但是一旦时间到期还是需要手动改本地时间,治标不治本,而且虽然说可以编译了,但是自己的Pyth

2022-03-17 13:47:18 852

原创 QT QPushButton监听disabled状态

一、实现方式为了通过监听disabled而改变图标,发现QPushButton和QToolButton并没有这个信号,所以需要去监听这个QEvent::EnabledChange事件即可得到这个状态。二、代码// TaskButton继承QPushButtonbool TaskButton::event(QEvent * e){ // 状态改变后,获取当前bool值 if (e->type() == QEvent::EnabledChange) { emit customIsEnab

2022-03-10 19:34:16 1446

原创 PC 配置jenkins自动打包

文章目录一、下载jenkins运行环境二、下载jenkins三、安装 qt 5.12.2 和 VS 2017四、安装git五、jenkins新建项目1、jenkins 中git全局凭据配置2、源码管理使用自己创建的good全局凭据3、效果图一、下载jenkins运行环境java jdk 11 镜像下载地址可以下载最新的java sdk 17,但是我下载的最新jenkins版本,jenkins 无法启动,所以使用的java sdk 11二、下载jenkinsjenkins 镜像下载地址jen

2022-02-10 14:52:18 825

原创 QT 秒数转时分秒(00:00:00)

QString MainWindow::getShowTime(int totalTime){ // 传秒数ss=1,传毫秒数ss=1000 qint64 ss = 1; qint64 mi = ss * 60; qint64 hh = mi * 60; qint64 dd = hh * 24; qint64 day = totalTime / dd; qint64 hour = (totalTime - day * dd) / hh; qint64 minute = (totalTim

2022-01-25 17:57:11 1730

原创 QT 利用URL Protocol实现网页调起本地程序

一、QT 安装时脚本注入注册表或者自己添加// 依次为目录、键、值,"URL Protocol"这个键必须有WriteRegStr HKCR "customopenwechat" "URL Protocol" "suibianqimingzi"// 键给空字符串就是默认,command目录里的键必须为空WriteRegStr HKCR "customopenwechat\\shell\\open\\command" "" "D:\WeChat\WeChat.exe %1"二、QT 中获取输入参

2021-10-21 15:53:26 517

原创 window11 安装linux子系统(一键安装)并连接到vs code

文章目录一、window 使用linux环境的几种方式二、安装wsl1.进入这个目录下,将cmd.exe已管理员身份运行2.命令行输入以下命令,然后重启计算机3.再次已管理员身份打开,执行命令,就会自动安装成功4.官方文档一、window 使用linux环境的几种方式方式评价虚拟机,再装个linux系统使用卡,占内存大装双系统来回切换比较麻烦租服务器需要付费wsl(window sub system linux)windows内置,使用是最方便的二、安

2021-09-17 23:44:39 2121 2

原创 QT 抓取widget转换为图片

QString folder = QStandardPaths::writableLocation(QStandardPaths::DesktopLocation); // 传入需要抓取的widget QPixmap pix = QPixmap::grabWidget(this); pix.save(folder + "/my_img.png");

2021-09-17 14:45:43 1220

原创 QT QMetaEnum枚举与字符串互转

一、示例#include <QMetaType>#include <QMetaEnum>#include <QDebug>class MyClass : public QObject{ Q_OBJECTpublic: // key --- value enum FruitsType { apple = 1, pear = 4, banana = 5 }; // 必

2021-08-31 14:36:42 417

原创 QT 网格布局插入固定列数的item

一、场景在网格布局插入固定列数的item,比如三列item,根据item的总数计算 #define ITEM_MAX_COL (3) int classNum; // 计算总行数(如总数5, 3列就是2行) // int line = (classNum + ITEM_MAX_COL - 1) / ITEM_MAX_COL; for (int addNum = 0; addNum < classNum; addNum++) { int i = addNum

2021-08-26 18:57:06 378

原创 QT 移入控件展示卡片

功能:移入widget显示卡片,并且可以进入卡片不消失(widget与卡片距离离得很近),移出卡片才离开bool DataShowWidget::eventFilter(QObject *obj, QEvent *event){ if (obj == ui->widget && event->type() == QEvent::Enter) { if (!m_noFollow) { m_noFollow = new NoFollowW

2021-08-26 18:21:53 436

原创 马克飞象常用操作(markdown )

2021-08-23 22:30:57 142

QT 文件上传和下载.zip

QT 实现基于TCP的文件服务器/客户端,支持上传和下载,具体详见博客:https://blog.csdn.net/guorong520/article/details/101058504

2020-05-11

教室管理系统.rar

使用QT实现一个教室管理系统,可以像QQ一样进行登录,可以注册账号、修改密码、记住账号。分为管理员和用户,可以使用不同的页面。对学校教室进行管理,可以添加教室、设置课表、查看课表、租教室、还教室功能。有任何不能执行的问题,欢迎咨询。具体功能详见博客 https://blog.csdn.net/guorong520/article/details/100702434

2019-09-10

空空如也

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

TA关注的人

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