- 博客(324)
- 收藏
- 关注
原创 c++在头文件中声明全局的变量
优先使用 inline 变量(如果环境支持 C++17),代码最简洁。兼容性要求高时,使用 extern + .cpp 的传统方式。仅需单文件内使用时,可用 static 变量简化代码。通过命名空间结合上述方法,既能组织代码,又能避免重复定义问题。
2025-05-14 16:32:08
528
原创 C++强枚举类型
在 C++ 中,“强枚举”(Strong Enum)通常指使用 enum class 定义的枚举类型(C++11 引入)。相比传统枚举(enum),它具有更严格的类型安全和作用域控制。Value2,// ...enum class:关键语法,声明强枚举EnumName:枚举类型名称UnderlyingType(可选):底层整数类型(如 int, unsigned char 等),默认是 intValueX:枚举值,可显式赋值或自动递增。
2025-05-08 14:13:59
437
原创 git怎么使远程分支回退到指定的节点处
我的远程分支名为master,本地分支名为develop,现在所在的分支为gpsd,本应该将gpsd分支提交的代码合并到远程分支gpsd_master上,但操作错误合并到了master上,现在要将mster分支回退到没有合并之前的节点处。最近提交代码的时候,总将分支合并错,原本要合到A分支,结果合并到了B分支,这样就导致b分支需要回退到我没有合并之前的节点处。这一步仅更新了本地对远程分支 origin/master 的引用,不会影响实际的远程仓库。本文记录下怎么将远程分支回退到指定的节点。
2025-04-14 13:20:55
497
原创 git怎么删除远程分支
再次查看远程分支,此时远程分支中独留现在追踪的分支,其它的远程分支已经不存在,是因为远程分支实际上已经被删除,但由于未更新本地缓存,查看远程分支的时候,依然能看到过时的远程分支信息。正常使用这样的指令就可以删除远程分支。如果远程仓库名称不是 origin,请使用正确的名称替换 origin。这里的origin为远程仓库名,一般默认是origin,除非自己修改。这条指令会列出所有的远程分支,并显示每个远程分支的详情。然后使用指令查看远程分支。使用下面的指令查看远程仓库列表。来重新获取远程仓库中的分支。
2025-04-08 19:59:09
864
原创 git撤销已经加入到暂存区但是不想提交的代码
git reset --soft 或 git reset(混合回退)是比较安全的选择,因为它们保留了你的更改,允许你重新组织提交。使用 git reset --hard 之前,请务必确保不会丢失任何重要的更改。
2025-02-25 19:12:16
448
原创 在Ubuntu上如何将qt开发的程序打包及做成安装包
本文旨在记录将qt开发的程序打包后可以在其它的电脑上使用,另外如何将独立的程序包制作成一个deb安装包。
2024-12-27 11:02:32
1379
原创 怎么在ubuntu系统上安装qt项目的打包工具linuxdeployqt
在ubuntu系统上开发的项目最后需要完成打包,qtcreator本身就用一个打包工具,在ubuntu系统上是linuxdeployqt。本文主要记录一下怎么在ubuntu系统上安装qt打包工具linuxdeployqt。
2024-12-25 11:08:37
553
原创 Qt实现自定义行编辑器
通过上下按键切换到不同的行编辑器,在选中的行编辑器中输入数字,编辑器呈现边框,编辑后按下回车键保存之前编辑的数值,没有按下回车键直接切换上下键之前编辑的数字没有被保存,编辑器中继续显示之前的数值。于此同时会根据不同的位数在数值前自动补齐。
2024-12-13 19:07:24
628
原创 Qt自定义类型在信号槽中的使用
enum class ProcessControl{//流程控制,用于区分监测线程发送的弹窗AUTOTEST,START,POP_UP,在自定义类型定义后使用宏Q_DECLARE_METATYPE()来注册自定义类型。enum class ProcessControl{//流程控制,用于区分监测线程发送的弹窗AUTOTEST,START,POP_UP,
2024-12-10 13:57:56
1149
原创 Qt自定义checkbox实现按下回车键该项打勾
使用qt实现一个列表,列表中每一项中的类似一个checkbox,通过上下键可以切换选中项,按下回车键在已经选中的项前出现对勾。
2024-12-03 18:09:03
777
原创 怎么修改虚拟机上Ubuntu的ip为静态ip
调试程序的时候,发现关机后再开机有时候虚拟机的ip会发生变化,所以为了不再去代码中修改通信的ip的地址,需要将虚拟机的ip改为静态ip,这样ip就不会在关机后再开机变了。
2024-12-02 14:16:52
1261
原创 QT实现列表通过向上向下翻页按钮翻页,以及上下键逐行显示文本行,向左向右键翻页功能
本篇文章的主旨如下:在窗口中显示一个列表,通过点击界面上的向上翻页按钮和向下翻页按钮,进行翻页,点击键盘上的向上、向下按键实现逐行向上、向下移动选中项,点击向左按键和向右按键实现向前翻页和向后翻页,但向后翻页到最后一页时,若最后一页不够可显示的行数,则从最后一行向前显示,使最后一页显示时不留空行。本文只要记录上述功能如何实现。
2024-11-20 13:53:32
643
原创 Qt自定义表格TableWidget实现整行单列按键逐行切换及跳转首尾
项目开发中需要实现一个类似表格的界面,要求只能通过键盘操作界面,点击上下键,表格中逐行选中,但是每次只能选中整行中的第一列,点击向左按键则跳转到首行,点击向右的按键,跳转到最后一行,若是当先在视口显示的行后面还有看不到的行,在表格最左侧下方出现一个向下的图标,若是当前视口可见的首行之前还有其它的行,则表格左侧的上方出现一个向上的箭头,若是表格显示的行,不足以占满整个视口的行,则表格左侧上下箭头都不显示。左侧箭头的功能是提示当前页后面或者前面还有没有显示出来的行。
2024-11-20 13:38:00
797
原创 git创建一个公共子模块用于不同的项目共享这一个子模块
项目开发中,有时几个不同的工程都用到同一个头文件,这时这个头文件就可以放在一个子模块中,每次子模块的代码更新之后,其它的工程就去更新子模块,这几个工程共享这个子模块。
2024-10-30 14:40:15
1025
原创 git初次怎么上传代码到远程仓库中(命令行)
创建git仓库,然后上传代码做了很多遍,但是每次都忘记该怎么做。本文主要记录一下如何创建git仓库,将代码上传到仓库中。
2024-10-11 15:23:59
356
原创 Linux上Qt安装相关的内容及在QtCreator使用QChart模块需要的配置
下面是Ubuntu上Qt安装相关的内容及在QtCreator使用QChart模块需要的配置。
2024-09-18 11:13:46
760
原创 ubuntu上cmake3.30.2的安装
目前的ubuntu系统是20.04.4,用命令行安装了cmake的版本是3.16的,由于项目需要升级cmake到cmake3.22之上,使用命令行没有升级成功。最后只能采用下载camke安装包来升级。本文主要记录一下如何使用下载安装包安装cmake3.30.2。
2024-08-22 13:41:17
1022
原创 Qt创建列表,通过外部按钮控制列表的选中下移、上移以及左侧图标的显现
项目中需要使用列表QListWidget,但是不能直接拿来使用。需要创建一个列表,通过向上和向下的按钮来向上或者向下移动选中列表项,当当前项背选中再去点击确认按钮,会在列表项的前面出现一个图标。
2024-07-17 18:05:45
981
原创 记录使用Qt的http示例代码时出现的:qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
下载对应版本的openssl库来用,发现官网上没有提供openssl1.1.1g对应的库,只可以找到对应版本的源码。下载OpenSSL 1.1.1g的源码到本地,想自己编译生成动态库的可以看文章末尾的参考文章。若是自己编译源码来生成动态库,按照本文末尾的参考文章所提供的生成对应平台的动态库编译过程中,若是执行过程中出现一些错误,也可以试图继续按步骤向下执行,最后去源码所在的目录下查找是否生成了动态库。如果嫌弃麻烦,不想自己编译,那么文章开头提供的编译生成的动态库,可以直接下载之后使用。
2024-04-29 17:13:10
839
原创 qt实现不定数量的按钮向前向后移动展示
在窗口中加入多个按钮,点击两边的翻页按钮,实现按钮的移动,或者说是翻页。其中按钮总数可以配置,窗口需要显示的按钮数也可配置。
2024-04-22 15:49:43
903
1
原创 配置QtCreator能加载自定义插件的环境
生成的自定义插件能在QtCreator的设计器中加载,需要满足当前使用的QtCreator的编译时所需的Qt库和编译器。本文旨在如何配置环境使其满足能在QtCreator的设计器中加载插件。
2024-04-12 12:00:33
945
原创 用于扩展Qt本身的插件(上)
默认是选择包含项目的,需手动勾选创建代码框架,会生成对应的下图中所示的系列文件名,此时可在图标文件项点击后面的浏览按钮选择自己要添加的图标图片。后面的步骤就不用说了,项目名为StyleWindow,路径采用默认的就行,基类为QWidget,采用默认声的Widget就行,不要勾选ui,该项目不用ui界面,一路操作,直到完成。2. 扩展Qt自身,同时需要在QtCreator的设计器中加载,类似于自定义控件,可像Qt的基本控件那般在设计器中直接展示,拖拽使用,具有属性,信号槽等。之后点击下一步按钮。
2024-04-11 17:40:52
1243
原创 麒麟系统下安装qt5.9.1后不能输入中文
在虚拟机上安装麒麟系统后,安装了qt5.9.1,只能输入英文和数字不能输入中文注释,编译的程序也不能输入中文。
2024-04-08 18:42:16
2745
原创 qt自定义窗口在拖动过程中出现抖动且拖动后位置看上去不对
将之前使用position()获取坐标位置的地方改为globalPos(),且将之前QPointF类型的变量 m_pressPos与m_topLeftPos改为QPoint 类型。于是即使上述的globalPos()可以解决原来的窗口拖动时的抖动和窗口不能及时跟随鼠标移动问题,但还是使用globalPosition()来实现一下看看吧。经实践所知,使用pos()与position()获得的鼠标位置,在窗口拖动中都出现抖动或者窗口不能及时跟随鼠标移动的现象。Qt6让使用position()代替pos()。
2024-04-07 16:48:50
1661
原创 qt样式表使用中的坑
都是针对控件m_Context的样式设置,后面的样式设置覆盖了前面的样式设置。若是对于单个控件的样式改变,使用this->setStyleSheet(this->styleSheet() +strStyle),设置的样式都不会生效。下面是部分实现的代码。其中主要涉及前期设置样式后,后期通过调用一些可以更改样式的对外接口来更改原有的样式,设置为新的样式的代码。对比代码中想要实现的效果,左上角半径为0,右上角半径为5,左下角半径为5,左下角半径为20,标题栏背景色为红色,文本窗背景色为灰色,达到了想要的效果。
2024-03-28 16:05:51
944
windows下openssl-1.1.1g对应的64bit编译生成的dll及lib,头文件,可以下载直接使用
2024-04-29
windows下openssl-1.1.1g对应的64bit编译生成的dll,可以下载直接使用
2024-04-29
qt自定义的电池插件可在QtCreator的设计器中加载(Qt6.6.0 MSVC2019 64bit)
2024-04-12
C++中boost库的安装及使用(Windows) Boost-1.78.0 已经编译生成的库和头文件,及源码,使用文档等
2024-02-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人