Qt
文章平均质量分 68
Moke_8453
喜欢C++,关注新技术发展的程序猿。
展开
-
Qt框架浅析之三 ------ Qt元对象系统(三)
Qt架构浅析三 —— Qt元对象系统(三) 本篇文章主要介QMataClassInfo, QMetaEnum, QMetaDataReaderControl, QMetaMethod, QMetaObject, QMetaProperty, QMetaType这几个的元对象系统有关的类。QMataClassInfo&QMetaEnum&QMetaDataReaderControl 这原创 2017-01-07 14:25:15 · 1080 阅读 · 0 评论 -
Qt框架浅析之五 ------ Qt内存管理和事件循环
其实这两块内容吧,还是很重要的,但是由于这两块网上也已经有很多文章了,而且写得灰常好了,自己在这里也就不多废话了。dbzhang800对于事件循环的这些博文,个人认为写的是非常好的,估计我来写也就是把这些内容整理整理再发表一下。这里直接贴上来,有兴趣的可以移步过去看一下。 Qt Event Dispatcher: http://blog.csdn.net/dbzhang800/article/d原创 2017-01-07 23:13:23 · 1808 阅读 · 0 评论 -
Qt框架浅析之二 ------ d指针
Qt中有很多如下的片段,d指针,一个Q_D宏声明接d->xxx。这个d指针从哪里来的,类成员变量里面没有,也没有其他很明显的地方。下面我主要来讲一下d指针的含义和好处。private: Q_DECLARE_PRIVATE(QRadioButton) Q_DISABLE_COPY(QRadioButton) friend class QAccessibleButton;QRad原创 2017-01-07 12:00:39 · 1871 阅读 · 0 评论 -
Qt发布(二)------动态发布确定依赖关系
qt程序在发布时,往往需要确定dll依赖关系,这里有两个工具推荐使用:qt-installer-framework 官方推出的工具吧。自己一般不用。自己喜欢用下面这个depends。具体用法百度。depends 简单但却极为强大的一款工具。我来对这款工具做一个粗略讲解: 区域1:这里是一个树形结构。 注意:这里只需要收拢到树的一级节点查看一级节点的dl原创 2017-02-27 22:50:19 · 799 阅读 · 0 评论 -
Qt发布(三)------webkit模块的裁剪
先说webkit之前,我先说一下浏览器内核的发展史以及现在的主流引擎,传送门 : http://liulanmi.com/browser。 接下来再来说一下webkit内核大概有哪几部分组成。webkit主要分为:wtf(web templete framework不要误解), webkit, webkit2, webCore, javascriptCore。顾名思义(说的很简陋,如有错漏原创 2017-02-27 23:31:44 · 1607 阅读 · 0 评论 -
Qt发布(一) ------ 静态编译解决Qt安装包大小问题
Qt在Windows界面开发中比较重要的一个问题就是,发布的时候会带上一大堆插件+自己的dll,即使是最简单的helloworld,需要发布,至少也得带上QWidget+QtCore,外加Windowsplatform的plugin(Qt4没有platform的插件,但是有QtGui),简单的一个demo就得接近20M。更何况实际工程之中往往会用到一些更占据体积的模块,比如Webkit(这个原生的w原创 2017-02-27 22:13:41 · 6699 阅读 · 0 评论 -
Qt框架浅析之四 ------ 界面单继承QWidget
其实大家可以观察一下QWidgets模块的继承树,还有其他Qt的模块,几乎没有多继承,QWidget本身是多继承QObject和QPaintEngine,QAxWidget为了实现ActiveX控件在Qt中的嵌入,多继承了QAxBase和QWidget,其他跨模块的一些类也有一些是多继承,但是在单个模块之下,比如QWidget及其子类QAbstractButton等,都是单继承的关系(可以看最下面的原创 2017-01-07 17:39:13 · 3257 阅读 · 2 评论 -
Qt框架浅析之三 ------ Qt元对象系统(二)
C++中头文件函数中的声明除非是纯虚函数,一般都在对应的cpp文件中有其函数实现,否则就会有undefined reference to XXXXXXXX。但是反观Qt的信号的声明方式:signals: void mysignal(); 这里明显是一个函数的声明,但我们也没有在对应的cpp中去实现这个函数,那么这个函数到底是在哪里实现的呢?答案就是:在moc文件中。 下面放上原创 2017-01-07 13:05:08 · 1306 阅读 · 0 评论 -
Qt框架结构浅析 ------开篇
Qt框架结构浅析——-开篇 自己接触Qt框架也有几年了,这里写下博客记录一下自己的学习过程。利用博客交流一下自己对Qt框架的见解和学习历程。也顺便和大家进行一下交流。在这里先借一张图(好象是forouk的图,也是国内Qt方面很厉害的一个专家,他博客地址:http://my.csdn.net/foruok),希望大家对Qt的框架有一个大致的了解(个人觉得这张图的确是概括非常好的)。原创 2017-01-07 11:36:35 · 10299 阅读 · 1 评论 -
Qt框架浅析之一 ------- 隐式共享(Implicit Sharing)
嗯,也许很多人都讲过这个Qt架构这个话题,但是我还是要讲一下这个,希望能有一点新意吧。 我们先来看看Qt官方关于Qt隐式共享的解释: Many C++ classes in Qt use implicit data sharing to maximize resource usage and minimize copying. Implicitly shared classes are原创 2017-01-07 11:44:54 · 3762 阅读 · 0 评论 -
Qt框架浅析之三 ------ Qt元对象系统(一)
元对象系统涉及很多方面,比如运行时类信息,属性信息,信号槽等等,但是其中最主要的应该是信号槽,大家也许在处理信号槽的时候都碰到过这么一个问题:为什么我没加Q_OBJECT宏,信号槽就生效不了呢?进入正题:#define Q_OBJECT \public: \ Q_OBJECT_CHECK \ static const QMetaObject staticMetaObject; \原创 2017-01-07 12:45:34 · 2817 阅读 · 0 评论 -
外部进程嵌入到Qt进程界面
有时候需要做框架集成的东西,需要把其他客户端像组件一样集成到一个客户端中,类似于一个软件集成的平台客户端,统一用一个中心管理的客户端做类似于控制面板一样的东西去调用不同的软件。此时就必须相应不同的点击图标的事件去嵌入到主界面里面。下面简单的对windows平台上面Qt的界面中嵌入系统自...转载 2018-07-29 20:55:49 · 797 阅读 · 0 评论