- 博客(12)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 qt删除布局中的所有控件
最近一个项目开发,需要动态的添加/删除控件,下面记录一下方法,该方法参考了网上的方法,但是没有针对layout中嵌套layout的做处理:void deleteAllitemsOfLayout(QLayout* layout){ QLayoutItem *child; while ((child = layout->takeAt(0)) != nullptr)...
2019-08-29 10:46:33
3962
2
原创 qt路径中非英文字符的判断问题
最近在开发中需要调用一个第三方库,该库不支持路径中还有非英文字符,所以需要对路径做判断。最开始的时候,执着于写正则表达式,但是无奈对这块懂的不多,写出来的表达式总不能处理所有的情况,最终放弃。后来我想了一下,正常来说,英文字符就是char类型,那么最大值是不能超过0xFF的,但是中文字符并不能用一个char来存储,它是需要两个字节的,因此就直接使用了STL的算法,对字符串进行遍历,然后判断是否有字...
2019-08-28 16:15:41
453
原创 关于win7永久禁用驱动签名问题的总结
这个问题主要是高通平台,因为在高通平台上驱动的签名这块是需要各OEM自己处理的,因此就常常会涉及到如何禁用驱动签名。下面根据最近处理这个问题的一些经验,做一点点总结记录:1,设置OS到测试模式。1)管理员运行cmd,输入 bcdedit/set testsigning on,敲回车,这个时候会提示操作成功;2)重启电脑。一般情况下会在右下角出现测试模式的水印;2,修改注册表防止每次
2017-12-05 11:10:15
19917
原创 QT多线程临界资源互斥
多线程是个老梗,一般都会遇到,同样临界资源的互斥访问也是一个老生长谈的问题了。这里把最近使用的一种方法分享一下。问题场景:主线程根据一定条件创建多个子线程,子线程执行的是同一个类不同实例的方法,该方法中需要向主线程发送一个消息显示一个对话框用以接收用户输入;问题表现:每一个线程都会向主界面发送消息,那么就可能会同时发,但是同一时间,对话框只能出现一个,否则用户会迷惑,因此发送消息和处理输入
2017-11-28 19:41:48
2009
原创 自定义文件(夹)选择对话框
在QT编程中,客制化界面是一个很普遍的线程,毕竟QT在这方面确实很强大,作为常用的文件(夹)选择对话框,客制化在所难免。下面就详细介绍下,如何以最简单的方式客制化。 对于文件(夹)对话框的客制化,我采用的是将QFileDialog作为子控件嵌入到一个QDialog中的方式,这种方式下,不需要自己去实现复杂的控制、排序等逻辑,只要对嵌入的QFileDialog控件进行一些属性的设置
2017-11-13 15:21:17
2870
1
原创 关于QTreeWidget控件添加复选框并客制化的问题
在前一篇文章中,介绍了如何用QTreeWidget实现QTableWidget的效果,后来在项目应用中,延伸涉及到了添加复选框并客制化,这里分享一下我的实现方法。 其实想要实现添加复选框并不难,QTreeWidgetItem有一个setCheckState方法,调用后,该item前面就会出现一个复选框了。至于想要客制化这个复选框,开始我也是没有头绪,后来细想QCheckBox在样式表中都
2017-10-30 09:18:38
3068
原创 关于QTreeWidget显示类似QTableWidget网格的实现
先上个图看看效果:我的实现方式选择了样式表,下面是代码:QTreeView::item{ border-right:1px solid rgb(179,216,247); border-bottom:1px solid rgb(179,216,247); padding: 2px; margin: 0px; margin-left:
2017-06-28 11:53:40
6658
1
原创 解决Qt"Unable to set geometry"问题
在Qt编程,特别是通过写代码的方式实现各种界面的时候,冷不防就会出现类似下面的报错:Unable to set geometry 46x30+480+190 on QWidgetWindow/'QPushButtonClassWindow'. Resulting geometry: 116x30+480+190 (frame: 8, 30, 8, 8, custom margin: 0, 0,...
2017-06-06 16:08:46
15410
原创 关于结构体内存对齐以及大小端
一直以来,结构体内存对齐都是大家讨论的热门话题,特别是对于初学者,总是会感觉理不清楚,本人最开始也是死记硬背,但是可想而知,过一段时间用的时候就会混淆。这几天又看了几篇关于内存对齐的文章,感觉略有所获,这里也分享下我的心得,同时也让自己加深理解。其实要搞清楚内存对齐的问题,有两个概念要弄清楚。一个就是硬件本身的内存分布,另一个就是结构体变量的内存分布;至于硬件本身的内存分布,我们可以想象成为一格一
2017-01-04 20:42:13
1567
原创 STL学习-字符串回文判断以及实现删除字符串中重复字符最少字符
回文判断,对于回文判断,不考虑输入中含有的字母数字外的字符,将这些字符删除掉进行判断:bool NotAlphaNum(char ch){ return (!isalnum(ch));}string ReplaceNoCharCharacter(string& str){//remove_if首先删除指定区域满足断言的字符,但是这个函数不能删除相应的内存,只是把删除剩下
2013-08-29 16:35:41
1095
3
原创 排序算法之归并排序
今天学习了其它大牛的归并算法分析和例程,然后参照相应资料,也写了个非递归实现的归并算法,记录下来,便于自己以后的复习:templatevoid Merge(T src[],T dest[],int iSrcStart, int iSrcEnd,int iSrcArrLength)//因为src中含有两个分别有序的序列,所以需要传入参数告知两个序列的起始{ int i=iSrcSta
2013-08-16 17:37:02
717
1
原创 驱动安装和打包
最近一直在做驱动文件结构研究和安装包的制作,经过一段时间的资料收集和学习,目前已经基本清楚了Inf文件的结构,也制作了驱动的安装包。由于本人文笔不好,下面直接说一下如何做驱动安装包。 win7安装没有经过签名的驱动需要先让OS进入“测试模式”:首先以管理员身份运行cmd;然后输入bcdedit/set testsigning on(有的也输入bcdedit.exe/set testsign
2013-03-20 16:47:50
3495
1
关于PC和手机MTP设备间文件互相拷贝的问题
2015-08-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人