- 博客(586)
- 资源 (12)
- 收藏
- 关注
原创 QT 点击窗口外区域 当前窗口自动关闭
想要通过弹出自定义窗口展示自定义的一些信息,同时也希望像右键菜单一样(点击非菜单区域,菜单自动关闭)的效果,那么你可以按照以下两种方式进行尝试:
2023-09-15 15:43:45
177
原创 QT 解决提升控件后提示 No such file or directory
在QtCreator中,给控件做提升时,提示“No such file or directory”,很明显,QtCreator找不到自定义控件文件。自定义控件的文件,则是放在widgets目录下面。
2023-06-04 12:12:59
437
1
原创 QT 如何制作桌面日历
在Windows桌面,大概都见过桌面的小组件(天气、日历、代办事项等),在用户使用“Win+D”组合键显示桌面时,这些组件仍可以显示在桌面,并不会最小化或者隐藏。那么这是如何实现的呢?其实代码实现也很简单:只需要将程序主窗口的父窗口设置为桌面就可以了,程序在运行的时候,也不会在任务栏出现。
2023-05-31 10:06:07
160
原创 QT 线程安全的单例模式(使用Q_GLOBAL_STATIC实现)
Qt提供了宏 Q_GLOBAL_STATIC(官方说明文档:[https://doc.qt.io/qt-5/qglobalstatic.html](https://doc.qt.io/qt-5/qglobalstatic.html) ), 用于创建全局静态对象。鉴于此,我们可以通过这个宏就能轻松实现单例(且线程安全)。
2023-05-11 16:52:06
302
1
原创 QT stackUnder 用法小结
stackUnder是什么意思?根据官方的解析,简而言之一句话:把窗口的小部件放置于父窗口的堆栈窗口中。本文将通过一则简单的示例,来具体解析stackUnder该如何使用。
2023-04-24 17:00:10
440
原创 QT setBuddy 用法小结
将此标签的好友(窗口其他小部件)设置为好友。当用户按下此标签指示的快捷键时,键盘焦点将转移到标签的好友小部件。好友机制仅适用于包含一个字符前缀为“&”的文本的QLabels。此字符被设置为快捷键。
2023-04-24 16:09:14
206
原创 QT 如何让QLineEdit的文字从最左边开始显示
当QLineEdit的文字长度超过了控件宽度,一般而言(控件文字设为靠左对齐),用户只能看到这一长串文字的后半段部分。但是如果想让QLineEdit从最左边开始显示字符串内容呢?举个例子,"abcdefghijklmnopqrstuvwxyz0123456789"这一长串字符串,在QLineEdit中显示时,可能只能看到“0123456789”,但是实际用户可能想优先看到字符串前半部分。
2023-04-24 15:28:36
313
原创 C++ 什么是BCC校验
BCC(Block Check Character),俗称异或校验。BCC的实现方法:将所有数据都和一个指定的初始值(通常是0)异或一次,所得结果为校验值。BCC一般只是用来排错的,并不是加密算法。
2023-03-25 21:07:10
352
原创 QT 如何提高 Qt Creator 的编译速度
如何提高编译速度,貌似是一个老生常谈的话题。对于Qter而言,如何提高QT Creator 的编辑速度是一直都是大家所期盼的。本文也是查阅了各路大神的方法后整理出来的,希望对各位有所帮助。
2023-03-20 10:44:11
1193
1
原创 C++ 如何让代码在main()函数之前或者之后执行
程序最早执行的函数其实并不是main,在main函数之前会有一系列初始化的操作(通常是由链接器等完成的)。比如在windows中,这个函数是mainCRTStartup,这个函数是链接器执行以初始化运行时库的,此函数又会调用CRTInit函数,该函数会对C全局变量、C内存分配以及C++中的全局类对象和构造函数进行初始化工作。
2023-03-15 15:56:23
531
原创 QT 常用控件类型命名参考
代码规范主要包含:命名、版式、注释等几个方面。其中命名包括变量、类、方法、文件名、数据库、表、字段、接口等方面。版式包括缩进、换行、对齐、大括号、循环体、逻辑判断等方面。注释包括文件注释、类注释、方法注释、参数注释、变量注释、代码片段注释等。
2023-03-09 11:14:40
1536
原创 QT 如何知道用户点击 QTextBrowser 中的具体链接地址
在通过鼠标点击 QTextBrowser 中的链接地址时,如果是希望使用外部浏览器打开链接地址,只需要添加一行代码。但如果是想知道用户点击的具体链接地址,则需要设置。
2023-02-07 11:23:18
182
原创 QT 如何设置 QCompleter 样式
在使用QCompleter,一般都会面临两个问题:1、如何设置Completer的行高;2、如何设置Completer的样式。本文将一次为你解答,顺便讲讲ComboBox设置Completer时需要注意的事项。
2023-02-02 09:56:37
509
原创 QT QCompleter 用法小结
QCompleter类提供基于项模型的补全功能。您可以使用QCompleter在任何Qt小部件(如QLineEdit和QComboBox)中提供自动补全。当用户开始键入单词时,QCompleter会根据单词列表建议完成单词的可能方式。单词列表作为QAbstractItemModel提供。
2023-01-31 11:20:02
349
原创 QT 如何去除QListView选中item后的虚线框
在使用QListView或者QListWidget时,如果选中其item,会发现边框会出现虚线框,这并不美观!所以,我们需要去掉选中后的虚线框。在查阅各路大神的实现方式后,总结了有三种方法可以去除虚线框。
2023-01-30 10:56:16
1024
原创 QT 如何把外部程序嵌入到QT界面
一个奇怪但又合乎现实需要的需求,就是把外部程序嵌入到本窗口内,实现外部程序在本窗口的显示。可能外部程序是由其他人开发的,但是想“拿来”作为内部使用,于是乎想把外部程序嵌入到本程序窗口内,让他们更像是一个整体。更有甚者,也可以实现外部程序与本程序之间的通讯。
2023-01-15 09:42:05
2914
原创 QT 如何只允许打开一个 chm 文档
chm文档,大家都不会陌生,很多软件的帮助文档就是chm格式的。我们自己在开发程序的时候,也需要对外提供帮助文档,为了方便用户,经常在软件中就可以打开帮助文档,那么如何只允许显示唯一一个帮助文档呢?
2023-01-12 11:17:00
319
原创 QT 如何实现 半透明的 圆角 矩形 窗口
在日常使用的软件里面,有些软件提示用户时,经常会发现有些提示窗口是半透明的。那么如何实现一个可拖动的、半透明、圆角矩形窗口呢?整体思路:将窗口本身设置为透明,然后通过qss或者绘图的方式来实现半透明的效果。
2023-01-11 17:25:36
791
原创 QT 秒/毫秒 转 时分秒
在日常开发时,经常会遇到计算剩余进度或者剩余时间的问题,比如计算剩余下载时间等等。本篇文章旨在提供几个常用的转换方式供各位参考。
2023-01-09 17:07:46
1488
原创 QT QTimeLine 用法小结
它最常用于通过周期性调用槽来动画化GUI控件。您可以通过将时间线的持续时间(以毫秒为单位)传递给QTimeLine的构造函数来构造时间线。时间线的持续时间描述动画将运行多长时间。然后通过调用setFrameRange()设置合适的帧范围。最后,将frameChanged()信号连接到要设置动画的小部件中的适当插槽(例如,QProgressBar中的setValue())。
2023-01-03 10:51:34
298
原创 QT 九宫格绘图(QSS方式)
九宫格绘图,顾名思义,就是把一个方块分割成 9 个部分,如图所示:四个角(1、3、7、9)的大小不变左右部分(4、6)宽度不变,进行垂直拉伸或平铺绘制上下部分(2、8)高度不变,进行水平拉伸或平铺绘制中间部分(5)进行拉伸或平铺绘制当背景图和需要绘制的范围不一样大时,能够最大限度的保证绘制出来的效果和背景图接近。
2022-12-28 12:33:49
1059
原创 QT 如何调节Windows系统音量大小
在平时日常工作中,我们切换输入法的方式一般会通过键盘组合按键来进行切换的,那么作为程序员,当然可以通过发送键盘消息事件来实现输入法的切换。同样的道理,我们也可以通过发送键盘事件实现麦克风音量或者系统音量大小的调节。
2022-12-27 11:18:13
638
原创 QT QListWidget 支持触摸屏的滑动进行上下滚动
在触摸屏上通过 QTableWidget 的滚动条的进行上下滚动,体验可能并不是很理想。所以如果可以像手机浏览某音的短视频进行上下翻页的效果,可能更符合用户的实际使用方式。
2022-12-21 10:08:27
1175
原创 QT undefined reference to `__imp_CoCreateInstance‘
QT 开发Windows客户端软件时,需要获取与设置Windows操作系统的音量大小。在pro文件中添加:QT += axcontainer。
2022-12-21 09:54:48
205
原创 QT SIGSEGV Segmentation fault
QT程序在运行时,出现崩溃。百思不得其姐,所以认真思考(上网百度)了一番,原来遇到此错误的不止我一人,故记录下来,以防下次再犯类似错误。
2022-12-06 15:54:11
1152
原创 QT QCalendarWidget 样式小结
QCalendarWidget 是一个由多个组件组成的控件,如果需要对其进行qss美化,只要对其内部使用的组件进行样式设置,接下来我们只需要找出它的界面元素即可
2022-12-05 10:05:55
1282
1
原创 QT QInputDialog 用法小结
QT为应用程序设计提供了一些常用的标准对话框,如打开文件对话框、选择颜色对话框、信息提示和确认选择对话框、标准输入对话框等,用户无需再自己设计这些常用的对话框,这样可以减少程序设计工作量。QInputDialog 有单行字符串输入、整数输入、浮点数输入、列表框选择输入和多行文本等多种输入方式。
2022-11-23 19:53:38
1024
原创 QT emit 信号时提示 error: undefined reference to
百思不得其解,Q_OBJECT 也加上了,但是在每次构建却总是提示 undefined reference to ’ xxxxxxxxxx ’ 和 undefined reference to ‘vtable for (类名)’。
2022-11-07 15:09:34
657
原创 QT *.pro 用法小结
写Qt项目,必须要了解Qt的.pro文件。pro文件是项目文件,其中包含了项目相关信息。直接在Qt Creator中打开项目,双击pro文件就可以打开它看到里面的信息。其他参考链接:https://libaineu2004.blog.csdn.net/article/details/89366925。
2022-10-10 14:00:42
353
原创 QT 此操作至少需要一个处于启用状态的有效资料档案库
使用QT的维护工具对QT的组件进行更新或者添加移除组件时,提示:此操作至少需要一个处于启用状态的有效资料档案库。
2022-09-20 17:02:04
5282
1
原创 QT MetaImage 一款图片工具软件
使用QT开发的一款图片工具,旨在提供简单易用的图片处理功能。目前功能包含:微信图片解密、图片圆角处理、图片九宫格分割、文字转二维码图片。后续会持续对软件功能的完整性和易用性做进一步提升。
2022-09-13 11:01:18
183
原创 C++20 std::swap_ranges 用法小结
swap_ranges() 用来交换两个序列。这个算法需要 3 个正向迭代器作为参数:前两个参数分别是第一个序列的开始和结束迭代器,第三个参数是第二个序列的开始迭代器。
2022-09-09 10:38:41
288
原创 QT 如何绘制饼状图(辐射渐变、线性渐变、角度渐变)
常规的绘图一般使用PaintEvent进行绘制,Qt提供了一个与渐变相关的QGradient类,目前支持三种渐变画刷,分别是线性渐变(QLinearGradient)、辐射渐变(QRadialGradient)、角度渐变(QConicalGradient),本文以绘制饼状图为示例,对辐射渐变、线性渐变、角度渐变进行一一详解。
2022-09-07 18:37:33
1153
原创 C++17 std::filesystem 高阶用法
//遍历当前目录下所有文件与文件夹//遍历当前目录中所有文件(只限文件)//递归遍历目录下所有的文件//删除当前目录下所有的文件(不含文件夹)//递归删除目录下所有的文件
2022-09-07 12:32:31
1480
2
原创 C++17 std::filesystem 用法指北
写在最前:std::filesystem 需要C++17或以上的支持,如果你也是使用visual studio开发,那么可以通过 项目属性 > 配置属性 > C/C++ > 语言 > C++语言标准 进行设置。
2022-08-30 17:00:31
4942
原创 C++11 std::hash 用法小结
Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。Hash算法可以将一个数据转换为一个标志,这个标志和源数据的每一个字节都有十分紧密的关系。Hash算法还具有一个特点,就是很难找到逆向规律。...
2022-08-30 11:19:26
6105
sqlite3_blob_test.zip
2019-05-15
基于winInet的文件上传程序
2019-04-04
基于mongoose实现Http Server(多线程)
2019-02-14
SpreadSheet的DLL版本(含源代码)
2018-07-02
SpreadSheet简单使用实例
2018-07-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人