- 博客(86)
- 收藏
- 关注
原创 程序猿开发过程一些实用工具 持续更新
开发过程中使用到的一些有用的软件,记录下~1、depends.exe 查找exe或者dll的依赖文件2、everything.exe 查找电脑文件
2021-05-26 15:55:39 137
原创 qt开发问题记录 持续更新
1、release模式下打印log到指定文件,需在.pro文件添加如下代码:DEFINES += QT_DEPRECATED_WARNINGS QT_MESSAGELOGCONTEXT2、QWidget设置qss不生效,需重写paintEvent()事件void TitleWidget::paintEvent(QPaintEvent *event){ QStyleOption opt; opt.init(this); QPainter p(this); style(
2020-11-04 14:46:17 799
原创 kylin arm xcb版本异常问题解决
源码编译qt 未生成xcb库,查看源码xcb readme.txt 提示 版本要求。解压源码编译, 先编译xcb-proto。
2024-07-05 19:30:01 380
原创 windows 下编译 TessRact+leptonica 识别图片文字
解压后使用 VS 工具,进入项目所在目录, 输入 NMAKE /f makefile.vc setup-v16 (vs2022 其余版本命令自行查找)生成项目。点击Configure, 选中vs2022 x64,取消sw勾选(如图),再次点击Configure。解压源码,输入路径,点击【configure】, 配置编译信息,点击【finish】配置编译环境(这里都是x64为例,后续不再复缀),然后点击【finish】点击【generate】, 点击【openproject】,编译生成。
2024-06-03 11:59:56 822 1
原创 linux报错bash: ./configure:/bin/sh^M:
用cat -A urfile时你可以看到这个\r字符被显示为^M,这时候只需要删除这个字符就可以了。可以使用命令sed -i 's/\r$//' urfile。bash: ./configure:/bin/sh^M:解释器错误: 没有那个文件或目录。
2024-01-15 09:01:20 1393 1
原创 QGridLayout 在widget上布局多个固定大小的QPushButton,并动态适应widget窗口大小
我们为布局的最后一行和最后一列添加了弹簧。这些弹簧在窗口大小改变时会扩展或收缩,从而保持按钮网格的中心位置。请注意,根据你的具体布局需求,你可能需要调整弹簧的位置或添加更多的弹簧来实现所需的布局效果。在这个例子中,我们创建了一个 3x3 的按钮网格,每个按钮都有固定的大小。上布局多个固定大小的。
2024-01-02 17:23:10 1231
原创 QTreeWidget 查找
在 QTreeWidget 中查找一个已知所有父项的子项,可以通过遍历树结构并匹配每一层的父项来实现。这个函数接受 QTreeWidget 指针和一个包含父项标签的 QStringList。它从 QTreeWidget 的顶级开始,并逐层向下搜索,每次都匹配当前层级的父项。如果在任何层级上找不到匹配的项,则函数返回 nullptr。
2024-01-02 14:28:05 826
原创 QTableView鼠标滑过某一行时该item所在行的背景颜色设置方法
【代码】QTableView鼠标滑过某一行时该item所在行的背景颜色设置方法。
2023-12-21 14:40:27 1101 1
原创 qt mingw编辑器的编码问题
如在 Qt Creator 中显示的字符不正确,或者编译器报告编码错误,可能需要检查源文件的编码设置,确保它们与系统设置和 Qt 的期望编码一致。在 Qt Creator 中,您可以在 "Tools" -> "Options" -> "Text Editor" -> "Behavior" 中设置默认的文本文件编码。
2023-12-07 16:54:26 556
原创 MFC与qt的区别
Qt提供了更多的现代化特性、跨平台支持和扩展性,适用于需要跨平台或更丰富功能的应用程序开发。而MFC更适合只在Windows平台上运行且与Windows API紧密集成的传统应用程序开发。在选择框架时,需要考虑目标平台、应用需求、开发资源和团队熟悉的技术栈。
2023-12-05 13:59:00 3089
原创 qt/c/c++文件操作总结
在Qt中以二进制模式读取一个大文件(以500MB为例)并将其内容存储到char*数组中,需要谨慎处理内存分配。以下是实现这一功能的步骤和示例代码:1. 打开文件使用QFile类以二进制模式打开文件。2. 检查文件大小使用QFile的size方法来检查文件的大小,确保它不会超过程序的内存限制。3. 分配内存使用new操作符为文件内容分配足够的内存。4. 读取文件使用QFile的read方法将文件内容读入分配的内存中。5. 关闭文件完成读取后关闭文件。示例代码。
2023-12-05 13:44:36 1338
原创 qt 自定义可删除的QDateEdit控件
实际开发中,关于日期的设定都是通过QDateEdit控件设置的,但是该控件默认会有一个初试时间设定,无法手动删除。这样就可以使用backspace删除啦。
2023-10-16 13:48:06 299
原创 多个QLabel中文字左右对其问题研究
众所周知,关于QLabel 中的文字对其方式,官方提供多种,具体可参考 AlignmentFlag,这里就不详细列举了。这里提供一种解决思路:选择一个基准,依次计算文本文字间距的绝对值,重置font类型,可以得到如下效果。基于这样的情况,就无法借用官方提供的枚举类型了。基本实现了左右对齐功能。
2023-08-09 09:58:39 434
原创 Qt开发调用程序路径带空格问题记录(避坑)
在程序中调用外部可执行时,windows系统可能存在中文路径问题(例如:C:\Program Files (x86)),一般来说,只需要在前后各自添加“\””即可解决。但问题是,在调用之前,若是使用QFile判断该程序是否存在,就有可能出现问题,返回false;于是在想是不是不需要“\””呢,测试果然证实猜想。测试发现,使用QProcess调用时,用上述方法,确实可以避免该问题。
2023-06-15 17:48:20 759
原创 Git 上传代码执行git pull 报错:! [rejected] master -> master (non-fast-forward) error: failed to push some r
Git 上传代码执行git pull 报错:!![rejected]43.332testcode.git'2、解决经过百度后发现原因是仓库中有readme文件,而项目中没有,内容不同步造成的,执行一下语句可:
2023-06-01 10:13:36 359
原创 基于qt5的应用程序在windows和linux环境下修改图标及制定后缀关联
基于qt5的应用程序在windows和linux环境下修改图标及制定后缀关联。
2023-05-15 09:57:49 1244 1
原创 基于QTableView中的MVD代理添加总结
目录1、设置样式文件2、set base attribute 3、设置model4、设置表头5、设置数据 6、添加代理控件6.1 添加 QSpinBox 代理 6.2 添加 QComboBox 代理6.3 添加 QPushButton 代理6.4 添加 CheckBox 代理 6.5 添加 Pixmap 代理6.6 添加 LineEdit 代理6.7 添加 ReadOnly 代理6.8 添加 Text 代理 6.9 添加 QProcessBar 代理6.10 添加 DateEdit 代理6.11 添
2023-04-18 14:44:49 2395
原创 QTableView 设置selection-background-color和border不同时生效问题记录
qtableview在使用过程种设置qss样式,设置选中时的背景色,以及边框颜色,不能同时生效。
2023-04-13 09:43:06 775
原创 qt开发问题之自定义文件后缀与指定程序关联解决方案(window/Linux)
实际开发过程中时常遇到这种情况:双击自定义的后缀类型(例如:.ext),想要调用(Test.exe)打开,这个时候就需要设定文件类型的关联了。
2023-03-15 09:35:42 1039
原创 Qt5数据库使用中QSqlDatabase报错问题解决
找到qt安装目录sqldrivers下的qsqlite.dll拷贝到程序可执行目录中,必须保持目录结构。在添加了Sql模块后,还需要将相关动态链接库拷贝到应用程序运行路径下。
2023-03-07 09:20:34 1489
原创 基于Qt不同开发平台的编码设置(解决中文编码问题)
QtCreater 提供了自己的翻译工具Linguist并选择对应版本,这种方法要求代码中必须将待翻译文字使用tr("")标注出来。这种方法在依据控件内容适应大小方面不够灵活,存在局限。请下载插件,名称是ForceUTF8 (with BOM),所有源文件和头文件都会保存为“UTF-8+BOM”编码。Qt的编码向来是比较让人头疼的事情,尤其是涉及跨平台方面的中文编码。把它的环境设置为“UTF-8+BOM”编码。请在预编译头stdafx.h文件加入。
2023-03-02 09:18:03 939
原创 基于QThread的线程功能封装实现
使用movetothread的方式实现暂停、继续、取消存在一定局限性,所以查找相关资料,实现了基于QThread的线程功能,包含封装源代码和调用示例。
2023-03-02 09:08:03 573
原创 读取文件到内存并进行异或加解密实现
异或密码(simple XOR cipher)是密码学中的一种简单的加密算法,是指对信息进行异或操作来达到加密和解密的目的。按这种逻辑,文本中的每个字符可以通过与给定的密钥进行按位异或运算来加密;若要解密,只需要将加密后的结果与密钥再次进行按位异或运算即可。通说点来说,就是一个字符异或一个密钥字符进行加密;解密的时候,则用加密后的字符再次异或密钥字符,便能够还原。
2023-01-07 10:57:37 919
原创 基于QWidget的屏幕水印和QImage的背景水印实现
最近研究了QT添加水印阅读和打印功能,参考各资源之后,考虑以两种方式实现:1、平铺2、指定位置(共九种a、水平位置-【左、中、右】 B、垂直位置-【上、中、下】)这里分别基于QWidget和QImage添加水印文本。可支持功能:(1)支持自定义文本字体、颜色、间距、透明度、旋转角度以及绘制方式。实现个性化定制水印需求。(2)支持水印文本宽、高自定义,可换行显示。
2023-01-07 10:47:40 2558
原创 qt实现的PDF阅读器(四)——Quick
qt-pdf-viewer-library是PDF .js库的qml包装,可以再在WebView中呈现PDF文件。这个库也适用于Android设备,它使用WebSocketServer, WebSocketTransport和WebChannel在qml和浏览器环境之间交换数据。
2022-12-23 14:11:20 1686
QTableView中添加各种代码(QSpinBox QconboBox QPushbutton 等)
2023-04-14
QtCeater 无边框窗口代码
2022-11-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人