- 博客(22)
- 资源 (56)
- 收藏
- 关注
原创 Halcon和Visionpro的对比
Halcon和Visionpro的对比1. 概括的对比1.1 Halcon优势Halcon有着更加低廉的Lisence,并且提供更好、更强大的2D和3D的视觉软件库; Halcon支持的视觉图像采集设备数量是Visionpro 的5倍; 支持更多的的位深度; GPU加速; 兼容Windows、Mac OS X,&Linux以及其他几个嵌入式的平台; 持续支持COM,....
2019-04-21 23:33:25 7581
原创 为何只能在其关联的线程内启动timer?
为何只能在其关联的线程内启动timer?在QTimer源码分析(以Windows下实现为例)一文中,我们谈到:QTimer的是通过QObject的timerEvent()实现的,开启和关闭定时器是通过QObject的startTimer和killTimer完成的。startTimer最终调用对象关联线程的eventDispatcher来注册定时器:int QObject::start...
2019-04-21 22:56:09 236
原创 QT中如何实现Thread与GUI的主线程连通
QT中如何实现Thread与GUI的主线程连通本文介绍的是QT中实现Thread与GUI主线程通,目前只会一种,采用信号槽机制。通常情况下,信号和槽机制可以同步操作,这就意味着在发射信号的时候,使用直接函数即可以立刻调用连接到一个信号上的多个槽。然而,当连接位于不同线程中的对象时,这一机制就会变得不同步起来,可以通过修改QObject::connect()的第5个可选参数而改变。con...
2019-04-21 22:47:48 1097
原创 GUI为什么不设计为多线程?
GUI为什么不设计为多线程?用户事件和底层事件的流程是相反的,每层都加锁效率太低,共用一把锁那就是单线程为什么一些更新界面的方法只能在主线程中调用?那是因为AndroidGUI库是单线程消息机制的,更新界面的操作必须放到主线程中执行。那为什么AndroidGUI要设计成单线程的,多线程不是更好吗?单线程消息队列机制Android、Swing、MFC等的GUI库都使用单线程消...
2019-04-21 06:46:55 619
原创 Qt中将函数发送到主线程执行
Qt中将函数发送到主线程执行考虑这样一种需求,使用Qt的线程类QThread在后台执行操作(比如说拷贝文件)的时候发生了错误,产生了一个错误信息需要提醒给用户,在后台输出很显然是不够的,因为用户可能根据就没有任何控制台可供程序输出信息。这是本人自己做得一个仿Win10文件拷贝对话框的一个文件拷贝对话框。该问题纠结到根本是因为Qt的任何窗口代码都必须在主线程(也就是main函数所在的那个...
2019-04-21 06:41:16 3724
原创 Qt数据列表展示
Qt数据列表展示Qt中使用QListWidget,ableWidget,QTreeWidget(只考虑最大3层)自定义子widget来展示数据的时候,通常子widget的个数达到了上千加载展示就会很慢,而且很耗内存。原因是new出来的widget太多了。下面的解决方案希望能帮助你。原理:其实一个列表展示给用户看的高度是很有限的不会超过一个屏幕的高度,而这个高度只需要很少的子widget...
2019-04-21 06:24:00 7353
原创 C++程序员应该掌握的东西
C++程序员应该掌握的东西一个C/C++程序员合不合格的必要条件,我觉得他应该理解了指针、理解了引用,知道通用类型数据在计算机中的内存表示方法,知道什么数据放在栈里,什么数据放在数据区,什么数据放在堆里,知道数据的对齐方式,知道怎么写代码更高效,知道对象的基本模型。下面通过实例逐个介绍这些大家应该掌握的内容:1. 齐问题 typedef union tagData1 {...
2019-04-21 06:06:03 1463
原创 QT实现appendSheet
QT实现appendSheet一般地,熟悉VB、VC的同学都知道,要将新增的excel表单添加到表单的末尾,是很简单的事情,直接调用Add函数,传入对应的函数形参,就能实现将新增表单插入到末尾,但是通过QT的QAxObject实现appendSheet()却不是那么容易的事情,因为上述的Add函数不奏效,经过多次试验尝试,发现通过Add函数新增的表单只能插入到某一表单的前面,而不能添加到表单的...
2019-04-20 21:41:55 1002
原创 计算机除法
计算机除法前不久看了《C++反汇编与逆向分析技术揭秘》,看到除法的介绍部分,里面有1道题8 % -3 = ?;-8 % -3 = ?;-8 % 3 = ?;大家能答的上来吗?反正我当时是没答上来,我想肯定很多人也一时答不上来,下面是上题的答案:8 % -3 = 2-8 % -3 = -2-8 % 3 = -2大家知道为什么吗?如果不知道的话,跟着我一起去弄明白吧...
2019-04-20 21:38:47 2724
原创 QT将窗体变为顶层窗体
QT将窗体变为顶层窗体在windows上通过鼠标双击某应用程序图标,该应用程序往往会以顶层窗口的形式呈现在我们面前,但是对于一个已经打开的非顶层窗口,我们怎么将其激活为顶层窗口呢?要达到激活,这个必须要满足两个条件:有通知激活的人,这个人必须是另一个应用程序(或同一应用程序的不同示例),他能发送信息给该窗体; 该窗体能够解析出该消息。至于一个应用程序如何向另一个应用程序发送消息的方...
2019-04-20 21:36:55 1730
原创 QT运行一个实例进程
QT运行一个实例进程开发项目的工程中,经常希望只运行一个相同的QT实例进程。当然也可以像类似QQ那样,同时登录多个不同的账号!为了避免这个问题,介绍以下几种用法,每一个解决方案都适用于特定的情况,所以必须尝试和适用合适的解决方案。1. 使用QLocalSocket方式:首先一个新的实例启动时,将尝试连接到同一个本地服务器,如果连接失败,则表示第一个实例进程,创建一个本地服务器。否则,进...
2019-04-20 21:32:28 490
原创 QT不让windows休眠的方法
QT不让windows休眠的方法对于一些Windows应用程序,必须要保证os不能休眠才能有效工作,如迅雷下载软件,如果os进入休眠,则会导致网络不正常,从而导致不能下载东西。那木有没有1种机制,当打开软件的时候,就自动将os设为不休眠状态呢?这里我介绍一种QT应用程序不让windows进入休眠的方法:::SetThreadExecutionState(ES_CONTINUOUS | ES...
2019-04-20 21:16:10 1218
原创 QT限制文本框输入的方法
QT限制文本框输入的方法界面编程的时候,对文本框的处理往往是个很头疼的事情:一是焦点进入文本框时,从人性化考虑,应选择文本框中文本,方便输入;二是,限制文本框的输入,只允许输入有效的文本,如果不这样做的话,那么就需要在程序中滤去非法输入。在这里介绍一种解决上述两个问题的方法:#ifndef _EDIT_H#define _EDIT_H#include <qline...
2019-04-20 21:10:48 2477
原创 深度探索QT窗口系统——几何篇
深度探索QT窗口系统——几何篇窗口作为界面编程中最重要的部分,没有窗口就没有界面,是窗口让我们摆脱了DOS时代,按钮是一个窗口,文本框是一个窗口,标签页是一个窗口。一个窗口可以由多个窗口组成,每天我们都在与窗口打交道,当你打开windows时,桌面就是一个窗口,你打开浏览器时,你也正在访问窗口。QT窗口系统,QT是一个跨平台的框架,类似微软的MFC,Borland的OWL,前者只适用于wind...
2019-04-20 21:03:24 1176
原创 深度探索Qt窗口系统——布局篇
深度探索Qt窗口系统——布局篇虽然界面管理器可以完成窗口布局,但是对于动态布局的情况下,这种做法就无能为力了,现实中界面经常要支持国际化,对于同一内容用不同语言翻译可能长度不一,这就需要窗口动态布局,如果采用界面管器布局窗口的话,则每一种语言可能都要设计一种界面,这给设计带来很大的不便,可以说,好的窗口布局能让界面设计变的更容易,更简单。在几何篇介绍了可以通过setGeometry、move、...
2019-04-19 22:35:50 1114
原创 QTableView的表格项中加入图标的方法
QTableView的表格项中加入图标的方法当使用QTableView视图的时候,需要在QTableView每一行前面加入图标,应该怎么做呢?Qt中通过使用MVC的处理方式很容易做到这一点,具体实现如下:下面就介绍一下,上图的灯泡是怎么实现的,通过重载QAbstractTableModel中的data方法,如下:(CTblModel 派生自QAbstractTableModel)Q...
2019-04-19 22:24:19 2798
原创 QTreeView改变项高的方法
QTreeView改变项高的方法有时我们想改变QTreeView视图的数据项的行高,那怎么办呢?今天在这里介绍两种改变行高的方法:1. 通过更改QTreeView的默认delegate的方法class CDelegate : public QStyledItemDelegate{ Q_OBJECTpublic: CDelegate(QObject *pare...
2019-04-19 22:20:32 1172
原创 QTreeView处理大量数据(使用1000万条数据,每次都只是部分刷新)
QTreeView处理大量数据(使用1000万条数据,每次都只是部分刷新)如何使QTreeView快速显示1000万条数据,并且内存占用量少呢?这个问题困扰我很久,在网上找了好多相关资料,都没有找到合理的解决方案,今天在这里把我的解决方案提供给朋友们,供大家相互学习。我开始使用的QTreeWidget 控件来显示我的数据,发现该控件在显示10000行以下的数据还可以应付的过来,但超过100...
2019-04-19 22:15:46 3025
原创 C语言结构体初始化的四种方法
C语言结构体初始化的四种方法定义struct InitMember{ int first; double second; char* third; float four;};方法1:定义时赋值struct InitMember test = {-10, 3.141590,"method one",0.25};需要注意对应的顺序,不...
2019-04-19 22:06:20 427
原创 QThread与QObject的关系
QThread与QObject的关系Threads and QObjectsQThread继承 QObject.。它可以发送started和finished信号,也提供了一些slot函数。QObject.可以用于多线程,可以发送信号调用存在于其他线程的slot函数,也可以post event给其他线程中的对象。之所以可以这样做,是因为每个线程都有自己的事件循环。在进行下面的讲解之...
2019-04-13 22:42:41 1269
原创 解决 Qt5 报错 This application failed to start because it could not find or load the Qt platform plugin
解决 Qt5 报错 This application failed to start because it could not find or load the Qt platform pluginQT为了简化生成发布版本,特别提供了工具 "windeplayqt.exe",这个工具在 "...\Qt\msvc2017_64\bin"的目录下,通过该命令,可以解决上述错误。打开控制台窗口...
2019-04-13 22:13:43 7793
原创 远程桌面时提示凭证不工作问题的终极解决办法
远程桌面时提示凭证不工作问题的终极解决办法环境说明远程办公电脑(放置于公司、自用办公电脑、win8系统) 远程连接客户机(放置于家中、家庭日常所用、win8系统)故障现象最近在使用远程桌面连接公司的办公电脑时,突然发现win10系统总是无法连接成功,提示“你的凭证不工作”,使用其他人的win7的连接也是出现这个问题。有问题上百度,可百度好久发现千篇一律的做法基本如下所示:1. ...
2019-04-13 22:06:53 12324
ePub Reader for Windows.zip
2019-12-23
WinRing0_1_3_1b.zip
2019-06-14
WS2_32库(Win32+Win64)
2019-01-07
Iocomp ActiveX 402SP1
2018-06-28
MATLAB_2017b(删除“.txt”)
2017-12-22
modbuspp-master
2017-12-18
CvvImage.h和CvvImage.cpp
2017-11-04
inttypes.h+stdint.h
2017-10-31
基于OPC规范的客户应用程序实现
2017-08-28
正则表达式 VC
2013-06-01
C++ GUI Programming with Qt 4
2013-05-22
SKINS++ FOR VC
2013-05-20
专业工控控件IOCOMP简介
2013-05-20
VC下配置Halcon
2013-05-16
VS2008 C#下HALCON环境配置
2013-05-16
protobuf-3.15.6(Debug).zip
2021-03-27
protobuf-3.15.6(Release).zip
2021-03-27
cmake-3.19.1-win64-x64.zip
2020-12-16
opencv_contrib-4.4.0.zip
2020-07-21
opencv-4.4.0.zip
2020-07-21
opencv-4.3.0.zip
2020-04-26
opencv_contrib-4.3.0.zip
2020-04-26
ippicv_2020_win_intel64_20191018_general.zip
2020-04-07
ippicv_2020_lnx_intel64_20191018_general.zip
2020-04-07
cpu-z_1.91-cn.exe
2020-01-06
FBReaderSetup-0.12.10.zip
2019-12-24
PDFSplitter.zip
2019-12-22
PDFBinder.zip
2019-12-22
PDFCreator.zip
2019-12-22
Kalman Filtering Theory and Practice Using MATLAB (2015, 4th).pdf
2019-12-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人