4 mario_z

尚未进行身份认证

我要认证

用科技改变生活,用科技创造生活。我现在为此奋斗不息,以后也必将为此奋斗不息~

等级
TA的排名 10w+

滑动界面之slidingSatckWidget

stack滑动窗口界面 窗口滑动界面相对于普通的stackWidget窗口管理多了一些动画效果,可以让界面看起来更加酷炫,如图;滑动窗口的原理&emsp滑动stackwidget的本质就是采用动画效果修饰widget的pos属性,同时移动前后的两个widget的位置,等动画完成之后,最后隐藏前一个widget。整个滑动的效果就达到啦。核心代码如下:void SlidingSta...

2019-12-24 16:15:55

QT的事件模型

关于QT事件机制的学习总结  Qt的核心在于QT的事件驱动机制。而整个事件的机制无非三个部分,事件的产生,事件的处理,事件的分发。(只有继承QOBject的类才能接收和使用事件。事件的产生  事件分为操作系统事件和应用内部事件,例如鼠标,键盘。。等属于由操作系统产生,外部输入事件,应用内部产生的事件有resize,paint等, 还有一种是自己子类化QEvent定义的事件。也属于内部事件。...

2019-12-09 15:34:25

QPostEvent的源码解读

###Qt中的postEvent过程解析用法 app->postEvent(QObject , QEvent);####1.传递给QCoreApplication的postEvent(QObject , QEvent, int NormalEventPriority);postEvent()```void postEvent(QObject *receiver, QEvent*e...

2019-12-05 10:32:40

QT自定义Layout畸形布局

关于QT的自定义布局自定义的布局形状如下[外链图片转存失败(img-faixCPYI-1567399885458)(https://i.imgur.com/6OLPhkl.gif)]简介  以前觉得自定义布局很难,但是亲手写了一下发现也很简单。就是继承子类化Layout。实现几个虚函数,然后再setGeometry()这个函数中计算各个子item的位置从而实现布局效果就好了。实现   ...

2019-09-02 12:52:09

C++11的新特性

1. nullptrnullptr 出现的目的是为了替代 NULL。在某种意义上来说,传统 C++ 会把 NULL、0 视为同一种东西,这取决于编译器如何定义 NULL,有些编译器会将 NULL 定义为 ((void*)0),有些则会直接将其定义为 0。C++ 不允许直接将 void * 隐式转换到其他类型,但如果 NULL 被定义为 ((void*)0),那么当编译char *ch ...

2019-07-10 10:15:36

仿照word的界面的滑动菜单(2)(伸缩下拉框)

这里要做两个处理:1.widget的上浮和下层 2.widget的伸缩动画。上浮和下层可以通过设置widget的属性来控制: if(isfloating) { m_is_floating = true; setWindowFlags(Qt::FramelessWindowHint | Qt::ToolTip); } e...

2019-06-04 10:18:08

QT仿照Word的滑动菜单以及菜单下拉框(1)(滑动导航条)

仿照work的界面的滑动菜单(1)先上图:这个功能的实现包括两个重要的部分,第一个是菜单条的文字下面的滑动伸缩线。第二个是菜单下拉框的动画效果,以及下拉框的上浮,下沉的效果。MenuBar.h#ifndef MENU_BAR_H#define MENU_BAR_H#include <QWidget>#include <QPaintEvent>#in...

2019-06-04 09:40:59

Log4Qt使用相关使用

简介 前一段时间用过log4Qt,只是零零散散的使用了。没有仔细的深究。抱着能用就行的心态终于遇到坑了。在网上也没有系统的介绍Log4Qt的文章。现在系统介绍下。希望对自己和别人有所帮助。log4Qt是根据Apache的log4j修改过来的,所有里面用的时候也会有jave的影子。需要详细的学习的同学可以搜说log4j的资料。因为log4Qt的资料太少太少了。log...

2019-05-07 00:38:05

QT布局之QSplitter

最近研究了QSplitier的类,发现它做布局的效果很好。不多说,先上图:关于QSpliter,它可以通过insertWidget() 和addWidget()添加小部件到它的布局中去,并且可以通过拖动来改变这些小部件的大小。通过setSize可以设置所有小部件的大小。非常方便。下面就是源码, 有兴趣的同学可以研究下,如果有什么不对的地方请与我联系。splitter.h#ifndef...

2019-04-12 21:18:27

C++前置声明

写代码的时候,代码规范通常会要求头文件尽量使用声明,规范如:为什么要使用前置声明,而不直接使用头文件呢? 难道头文件中使用声明能够是编译的速度加快? 但是编译器在预处理的时候也会将头文件加载到cc文件里面,那这样声明就起不到作用了。其实原因很简单。就是为了方便a.h 和 b.h能够相互调用。a.h 中只加b类的声明。 a.cc 中添加b.h的头文件。同时b.h若想调用a类的时候直...

2019-03-28 10:05:07

C++常用的设计模式(超级简洁,清晰)

1、工厂模式:简单工厂模式、工厂方法模式、抽象工厂模式  1)、简单工厂模式:主要特点是需要在工厂类中做判断,从而创造相应的产品,当增加新产品时,需要修改工厂类。typedef enum{ T80 = 1, T99}TankType;class Tank {public: virtual void message() = 0;}...

2019-03-26 10:18:46

QT自定义之滑动开关

写了一个简单的滑动开关, 不多说,上图:代码如下:#ifndef SLIDERBUTTON_H#define SLIDERBUTTON_H#include <QWidget>#include <QMouseEvent>#include <QPaintEvent>#include <QPainter>#include &l...

2019-03-06 19:12:44

QT的TableView之自定义Delegate委托

1.介绍 在使用Table时,我们希望可以对table做更好的个性化处理。例如需要美化表格,在表格中添加控件等等。这时候就要用到Delegate了。说白了,Delegate就在在数据和界面之间增加了一层渲染,处理的功能。2.QStyledItemDelegate QT提供了两个基类QStyleDelegate 和QStyledItemDelegate为我们提供自定义...

2018-12-29 09:46:07

QT的TableView之自定义Model

1.介绍      QT在QT4的时候推出了Model-view视图结构,这种结构更好的将软件中数据和UI分层处理,从而达到提升显示效果。QT中其实已经自带一些基本功能的model,如下:以上的Model可以满足一般的基本需求,使用起来方便简单。比如QStandardItemModel既可以满足一般的Table的结构,也可以满足树状的结构。但是自带缺点是使用起来不够灵活,对数据的操...

2018-12-27 15:08:38

C++ /Qt 基础资料

简述Qt 官网Qt 官网:https://www.qt.ioQt 下载:http://www.qt.io/downloadQt 所有下载:http://download.qt.io/archive/qtQt 官方发布下载:http://download.qt.io/official_releases/qtOpen Source 下载:http://www.qt.io/downloa...

2018-12-17 12:52:49

从零实现一个http服务器

我始终觉得,天生的出身很重要,但后天的努力更加重要,所以如今的很多“科班”往往不如后天努力的“非科班”。所以,我们需要重新给“专业”和“专家”下一个定义:所谓专业,就是别人搞你不搞,这就是你的“专业”;你和别人同时搞,你比别人搞的好,就是“专家”。说到http协议和http请求,很多人都知道,但是他们真的“知道”吗?我面试过很多求职者,一说到http协议,他们能滔滔不绝,然后我问他http协议的...

2018-12-16 23:14:59

C++写的12306抢票软件

写在前面的话每年逢年过节,一票难求读者肯定不陌生。这篇文章,我们带领读者从零实现一款12306刷票软件,其核心原理还是通过发送http请求模拟登录12306网站的购票的过程,最后买到票。郑重申明一下:这里介绍的技术仅供用于学习,不可用于恶意攻击12306服务器,请勿滥用本文介绍的技术。对12306服务器造成的任何损失,后果自负。当然,由于12306服务器用户量巨大,为了防止黄牛和其他一些非法...

2018-12-16 22:57:18

QT项目性能优化

QT项目性能调优小记最近的项目用到了QT 5.5,项目在运行过程中出现了一段时间CPU占用率持续25%,并频繁断网的情况,遂决定对项目性能进行优化。优化工具也是VS2010自带的性能分析工具,具体的使用方法参见:http://www.cnblogs.com/smark/archive/2011/10/12/2208039.html其中可以选择“just my code”过滤出自己编写的...

2018-11-28 15:59:28

关于QDockWidget在QMainWindows下的初始化大小的设置

最近使用QDockWidget时遇到了QDockWidget的初始化大小的设置的问题。于是就研究了一番。在网上看到有人用setFixsize固定QDockWidget的大小,但是这样就无法调整DockWidget的大小了。QDockwidget的大小是根据widge里面所放控件的大小决定的,只要设置好里面控件的大小就OK了;用setHinit(QSize)这个函数...

2018-11-20 14:11:57

Qimage像素级操作

这篇文章主要阐述了如何使用Qt在像素级别上对图像进行操作,并实现了一些图像效果,这些效果主要有:灰度,模糊,锐化,添加相框,金属质感,改变图像饱和度,亮度还有白平衡。scanLine 返回某一行数据,转换为QRgb指针可进行直接有效的像素存取操作。介绍文章中,我们将讨论在Qt中修改图像的一些技术和算法,在这之前,你必须知道在Qt中操作图像的一些方法。.在Qt中有两种表示图像的类,Q...

2018-11-14 12:28:28

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。