- 博客(22)
- 资源 (10)
- 收藏
- 关注
原创 Qt模态窗口是怎么实现的
实例程序探索设置模态时,需要通过祖宗window判断是否能够设置模态。遍历应用程序中的所有窗口,更新阻塞状态。还是先显示,虽然父窗口还没有显示到了父窗口显示的时候,这里会判断,如果不是模态,需要更新窗口的阻塞状态这里设置了一个标志位Qt会在很多消息处理中,对该标志位进行判断,并特殊处理,实现一种伪模态的效果...
2021-07-04 09:16:22 513
原创 windows平台下qt窗口的show是如何调用的(同步)
实例程序#include "QtWidgetsApplication1.h"#include <QtWidgets/QApplication>#include <QLabel>#include <QDialog>#include <QDebug>#include <QThread>#include <windows.h>#include <TlHelp32.h>int main(int argc, cha
2021-07-03 22:16:34 1006
原创 深入浅出MFC——Command Routing
MFC对于消息路由的规定是:如果是一般的Windows 消息(WM_xxx),一定是由衍生类别流向基础类别,没有旁流的可能。如果是命令消息WM_COMMAND,就有奇特的路线了什么是Application Framework?基本上你可以说,Application Framework是一个完整的程序模型,具备标准应用软件所需的一切基本功能,像是文件存取、打印预视、资料交换…,以及这些功能的使用接口(工具栏、状态列、菜单、对话框)。...
2021-05-22 14:37:25 287
原创 fatal error C3859: virtual memory range for PCH exceeded; please recompile with a command line optio
真的很坑,记录一下,这个问题,是因为,头文件重复包含了,一个头文件写了多次,所以项目中,要精简头文件,不需要的坚决不要包含。其他解决方法:stackoverflow微软官方讲解
2021-04-26 17:35:13 371
原创 可执行文件或模块加载DLL的顺序
由于导入段只包含DLL的名称,不包含DLL的路劲,因此加载程序必须在用户的磁盘中搜索DLL。下面是加载程序的搜索顺序包含可执行文件的目录Windows的系统目录,该目录可以通过GetSystemDirectory得到16位的系统目录,即Windows目录中的System子目录Windows目录,该目录可以通过GetWindowsDirectory得到进程的当前目录PATH环境变量中所列出的目录...
2021-04-21 14:15:53 367
原创 Qt在windows平台下的消息循环——Qt进阶第二天
一、背景万事开头难,前几天花了两天时间终于搭建好了Qt的源码调试环境,认识一个系统,最先要搞清楚的就是消息循环和事件分发机制,这是之后继续深入学习qt的前提,话不多说,直接开撸。二、代码走读1.QApplication相信任何人学习Qt的第一行代码就是QApplication,最后一行代码也是它。我坚信,这个类和消息循环关系匪浅。别急,我们先看看它的构造函数:Q_D这个宏是取private类(内部实现),赋值给变量d。进入init函数:可以看到初始化相下抛了,后面会一直抛到祖先类:QCore
2021-03-04 10:03:09 1045 1
原创 vs编译Qt源码
之前也用过qt,不过始终没能深入学习qt整个框架。这么庞大并且这么多公司都认可的软件肯定有它自己的精华。这几天想着学习qt,必然要有源码。从安装包拿到源码后,看起来始终觉得不尽兴,故摸索着编译源码,从而可以调试。首先,我们要下载qt源码,不是安装包那种。是带configure的,这样我们才能make。地址:https://download.qt.io/archive/qt/5.1/5.1.0/single/qt-everywhere-opensource-src-5.1.0.zip然后呢就很简单了
2021-03-02 18:35:30 956 1
原创 Git学习
使用记录的哈希值改变HEAD的位置:git checkout C4 git checkout HEAD~4 可以直接使用 -f 选项让分支指向另一个提交。例如:git branch -f master HEAD~3 上面的命令会将 master 分支强制指向 HEAD 的第 3 级父提交。 ...
2020-10-15 09:23:40 218
原创 C++11新特性学习笔记
新增long long类型。在32位编译系统:int占四字节,与long相同;在64为编译系统:int占四字节,long占8字节。 列表初始化。用花括号来初始化变量得到了全面应用: vector<string> v1{"a", "an", "the"};vector<string> v2{10, "a"}; nullpter变量。 constexpr。C++11允许将变量声明为constexpr类型以便由编译器来验证变量的值是否是一个常量表达式。声明为co
2020-10-12 17:24:06 439
原创 2020-09-27
特殊数(假设是8位):10000000对无符号数:(10000000)B = 128 在原码中定义为:(10000000)B = -0 在反码中定义为:(10000000)B = -127 在补码中定义为:(10000000)B = -128
2020-09-27 21:47:52 154
原创 C++11多线程编程——引用传参
void hello(const string& str2){ while(1) { cout << str2 << end; }}void main(){ { string str1("123"); std::thread t(hello, str1); t.detach(); } Sleep(9999);}首先我们分析一段这段代码,局.
2020-09-09 10:51:10 1517
原创 IP地址与硬件地址(MAC地址)
IP地址与硬件地址是不同的地址。从层次的角度看,1.硬件地址(或物理地址)是数据链路层和物理层使用的地址。2.IP地址是网络层和以上各层使用的地址,是一种逻辑地址(称IP地址是逻辑地址是因为IP地址是用软件实现的)...
2020-09-01 19:07:42 2835
原创 由STL的Adapter适配器想到C++多态
这几天疫情在家闲来无聊,翻开许久没看的STL开始复读起来。mem_fun_ref这个函数印象很深。属于function adapter。最常见的用法:#include <iostream> #include <vector>#include <deque>#include <iterator>#include <alg...
2020-02-24 10:19:45 173
原创 设计模式(四) Composite组合模式
背景:常常有一些组件在内部具有特定的数据结构,如果让客户程序依赖这些数据结构,将极大地破坏组件的复用。这时候,将这些特定的数据结构封装在内部,在外部提供统一的接口,来实现与特定数据无关的访问,是一种行之有效的解决方案。模式定义:将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。class Component{publi...
2019-07-28 23:27:26 155
原创 设计模式(三) Command命令者模式
Command命令模式和Visitor访问者模式都属于行为模式,因此将它们两个连着写印象更加深刻。为什么要用命令模式? 程序编写的过程中经常会遇到对某个对象的各种操作,这些操作往往是和对象紧紧联系在一起的(紧耦合),如果遇到修改操作的情况改起来会很麻烦,如(redo和undo操作),我们用命令模式能够将起到一个解耦合的作用。命令模式的核心就是将命令(行为)封装成...
2019-07-26 22:54:37 154
原创 设计模式(二) 访问者模式 Vistor
在软件开发中,经常需要用到多态,继承等机制,下面是很常见的一段代码class Brand{public: virtual void productShoe() = 0;}class Nike : public Brand{public: virtual void productShoe() { //createAj1(); }};class Adidas : ...
2019-07-21 10:44:30 137
原创 设计模式(一) 工厂方法 和 抽象工厂
其实工厂方法和抽象工厂是两个设计模式,之所以将它两放在一起是因为它两非常相似,都是解决对象创建这一类的问题。工厂,就是利用c++动态多态的机制(虚函数,静态多态是继承),将对象的具体创建也就是new的部分延迟到一个小黑屋里面。抽象工厂是在工厂方法的基础上进行的扩展,所以我们先了解什么是工厂方法。工厂方法,在这里我们举一个例子,我们要创建一个英灵,英灵又有好多种类的,比如Arche...
2019-07-20 08:16:24 226
原创 OGRE 学习之路(二) Cube Mapping
分类:Unsorted(未分类的)描述:Demonstrates the cube mapping feature where a warp-around environment is reflected off of an object.Uses render-to-texture to create dynamic cubemaps.简单来说这是一个立方体贴图的demo,并且所用的纹理...
2019-07-04 22:33:56 224
原创 OGRE 学习之路(一) Compositor
分类:Effects描述:A demo of Ogre’s post-processing frameworkCompositor即合成器,也就是所谓的后处理。不过后处理都有一个缺陷,就是没有线框模式,看不到网格。OGRE中Compositor的例子中列出了3页合成器的例子,实际上只要学会一个,流程怎么走就都通了,就挑选最感兴趣的heat Version来学习!也就是我们常...
2019-06-30 22:27:50 917
原创 QML学习之路(1) qml等待圈busyIndicator
qt小菜鸟开始学习qml,打算直接看代码开始我的qml之路。。。现在开始,打算一天一个demo。。。强行学习一波qml。第一个学习的demo:busyIndicator。效果图:主要是使用了ConicalGradient和RotationAnimation标签,需要在main.qml中加入import QtQuick.Controls 2.2,并且需要在pro文件中加入QT +...
2018-12-15 21:31:38 2315
原创 Qt具有动态效果的进度条
通过动画绑定进度条从而达到动态的效果,工程已经打包好http://download.csdn.net/download/qq_37275429/10241680
2018-02-06 10:03:22 4850
原创 Qt连接本地Access数据库
最近做项目需要使用Qt做一个表格,想法是直接绑定本地数据库字段然后显示就行了,由于刚学习Qt不久,过程十分曲折,先博客一篇仅作记录,新手上路,欢迎批评指正。在Qt中有自带的QSql类是用来操作数据库的,本着面向对象的原则,我决定将数据库连接封装成一个类。先引入头文件#include //线程保护序列化#include #include #include 三个类可以通过查
2018-01-13 09:19:54 7296 1
OGRE_ Material Scripts.pdf
2020-03-10
qml等待指示器
2018-12-15
Qt动态进度条
2018-02-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人