- 博客(175)
- 资源 (9)
- 收藏
- 关注
转载 Qt之统一的UI界面格式基调,漂亮的UI界面
最近一直在忙,忙工作,忙私活;也很久没有写博客了; 今天主要谈谈Qt UI界面统一样式(格式基调)的问题;例如在window系统上,几乎所有的窗口都有标题栏和状态栏以及中央部件,而且每一个标题栏和状态栏以及中央部件样式都保持一致的;但是在实际开发中我们又不想使用window系统自带的标题栏和状态栏等,因此需要自定义标题栏和状态栏以及中央部件,同时保持项目中的所有窗口的标题栏和状态栏和中央部件
2015-10-31 17:52:41 26233
转载 Qt:Qt实现具有反锯齿的圆角窗口:不规则窗口
@import url(http://www.cppblog.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); 在Qt里实现这个功能一点也不难:1. 使用Photoshop做出不规则窗口效果,或者使
2015-10-31 17:11:54 4306
转载 2013 duilib入门简明教程 -- 前言(1)
关于duilib的介绍就不多讲了,一来不熟,二来小伙伴们想必已经对比了多个界面库,也无需赘述。下面进入正题: 不看广告看疗效! 已有众多知名公司采用duilib做为界面库,如华为网盘、PPS(PPS和华为之前都是用UIPower)、金山快盘(也没用自家的界面库)、酷我音乐、爱奇艺视频、百度杀毒、百度卫士、百度管家等一系列产品。而duilib自己提供的Demo有QQ、QQ旋风、360等
2015-10-31 16:18:42 912
转载 [Qt]不带标题栏(FramelessWindowHint)的窗体移动及调整大小
Qt窗体若设置了setWindowFlags (Qt::FramelessWindowHint);运行后该窗体是无法进行移动和调整大小的,那要如何才能让它和普通窗体一样进行移动和调整其大小的呢?方案如下:void QFramelessWindow::mousePressEvent(QMouseEvent *event){ if (eve
2015-10-31 16:00:11 2520
转载 Qt之实现360安全卫士主界面(四)
这篇博文主要讲解360安全卫士标题栏的创建。关于标题栏,我想大家应该都非常熟悉了,其主要包括窗口关闭、最大化/还原、最小化等按钮;但是标题栏的这些按钮都是非常有特色的。 在我写这篇博文之前,我就已经完成了类似360安全卫士标题栏的创建代码,在开始写代码时,我仔细想了想360安全卫士主界面标题栏的构建方法,它是自绘的还是贴图的?所以我特意在360论坛查了查它皮肤制作的方法,并在它的
2015-10-31 15:49:31 661
转载 Qt之实现360安全卫士主界面(三)
这篇博文主要讲述360安全卫士工具栏的创建;工具栏由图片和文字组成,当鼠标移到工具栏按钮上时,需要有些特征表达该现象,如背景色变化等;当然鼠标单击工具栏按钮时,同样也要有些特征,并且这个特征区别于鼠标移到按钮上的特征;写起来有些拗口,我给大家先看看我实现的效果图。 单击按钮时和鼠标移到按钮上时,按钮背景会不同,并且单击其他按钮时,已单击的那个按钮背景应该恢复。下面讲解其具
2015-10-31 15:48:42 900
转载 Qt之实现360安全卫士主界面(二)
上一篇博文【Qt之实现360安全卫士主界面(一)】讲解了使用Qt对360安全卫士界面怎么进行分割、布局,如何自定义窗口以及设置窗口背景圆角等,最终形成了一个类似的主界面。但是界面却不能移动,不能伸缩,不能双击最大化还原等;今天该博文就主要讲解这三方面的功能,最终的效果和标准窗口的处理效果一致。效果如下图所示:一、移动主界面 移动主界面是通过按住鼠标左键进行标题栏拖动
2015-10-31 15:47:40 2006
转载 Qt之实现360安全卫士主界面(一)
该博文只是模仿360安全卫士的主界面,并不牵涉其中的任何业务功能;重在个人见解以及界面实现;关于360安全卫士的主界面,我想大家都见到过,毕竟基本大部分人都安装过这个软件,基于我对其界面的个人见解,对主界面分割为四部分:分别为标题栏、工具栏、内容区域、状态栏,分割图例如下图所示: 由于标题栏、工具栏、内容区域和状态栏都不是标准的部件,因此只能子类化部件进行自定义开发;主窗
2015-10-31 15:46:02 1101
转载 Qt 高仿QQ窗口抖动效果【原】
2939495969798//头文件YShakeWidget.h#ifndef YSHAKEWIDGET_H#define YSHAKEWIDGET_H#include classQTimer;classYShakeWidget : publicQWidg
2015-10-31 15:44:12 4096
转载 【原创】高仿360安全卫士 9.2 界面 (纯qml实现)
之前有网友用Qt实现了高仿360界面,这里我提供另一种思路:通过 qml 来实现高仿 360 界面。窗口中的全部界面元素,包括工具栏,最小化、关闭等按钮,下面的stackwidget全部交给qml来绘制,逻辑的部分可以交给c++来处理。通过qml可以很方便的实现各种动画效果,而且修改qml文件不需要重新编译,换肤功能应该也可以很简单的实现出来。我没有找到用qml实现窗口阴影
2015-10-31 15:41:35 3432 1
翻译 Qt动画效果展示
在上一篇博文【Qt动画框架--原创翻译】中,我给大家原创翻译了Qt动画框架并且有文字和代码以及图片共同描述;今天在这篇博文中,主要实践Qt动画,做一个实例来讲解Qt动画使用,其界面如下图所示(由于没有录制为gif动画图片,所以请各位下载查看效果): 该程序使用应用程序单窗口,主窗口继承于QMainWindow;主窗口有5个QToolButton部件(窗口底部的四个以及
2015-10-31 15:40:38 1978
转载 Qt动画框架--原创翻译
Qt动画框架由本人终于翻译完毕,这里的每个字母、每个汉字、每张图片都是有本人一个一个敲打出来的,现把它共享出来。 Qt动画框架是Kinetic项目的一部分,主要目的是提供一种简单的方法用于创建动画的和平滑的GUI。通过Qt动画属性,Qt动画框架为部件和其他QObject对象的动画操作提供了非常大的自由性。Qt动画框架也能用于图形视图框架中。 在这片文章中,我
2015-10-31 15:38:52 521
转载 关于时间:UTC时间、GMT时间、本地时间、Unix时间戳
1.UTC时间 与 GMT时间我们可以认为格林威治时间就是时间协调时间(GMT=UTC),格林威治时间和UTC时间均用秒数来计算的。2.UTC时间 与 本地时UTC + 时区差 = 本地时间时区差东为正,西为负。在此,把东八区时区差记为 +0800,UTC + (+0800) = 本地(北京)时间 (1)那么,UTC = 本地时间(北京时间))- 0
2015-10-31 14:13:17 1560
转载 Qt中的垃圾收集机制
在Qt中我们有很多的new,可是却很少看见delete,这是因为也有自己的垃圾收集机制,当然不同于java的引用计数,Qt是以对象树的形式来实现对垃圾的收集。父类拥有并维护者一颗对象树。你在学一个类的构造函数时,格式是这样:xxx(QWidget *parent = 0),这里的parent就是父类的指针,即是把此类对象注册到父类的对象树中,当父类的对象释放时,对象树的对象也会释放,这样就不需要你
2015-10-31 11:56:20 573
转载 如何让Qt 的程序等待一段时间
转自:http://blog.csdn.net/dbzhang800/article/details/6300425 关于sleep的使用,详见链接。其中一段如下:QTimeQTime t;t.start();while(t.elapsed()这种死循环也是一种常见错误用法。但改成正确的还是比较简单的:QTime t;t.start();while(t.el
2015-10-31 11:32:01 5043
转载 Qt数据库(sqlite) — 总结
#include QT += sqlQSqlDatabase类实现了数据库连接的操作QSqlQuery类用来执行SQL语句QSqlRecord类 封装数据库所有记录第一:QSqlDatabase类QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); 采用QSQLITE数据库,QMYSQL数据库有问题?d
2015-10-31 11:25:28 646
转载 Qt进程间通信——共享内存
Qt提供了一种安全的共享内存的实现QSharedMemory,以便在多线程和多进程编程中安全的使用。比如说QQ的聊天的客户端,这里有个个性头象,当点击QQ音乐播放器的时候,QQ音乐播放器里也有一个个性头像,这两者间的头像一样,可以用共享内存的方法实现。qt实现共享内存的步骤如下:1)向共享内存中提供数据的一方: 1. 定义QSharedMemory shareMe
2015-10-31 11:24:15 2298
转载 qt下的时钟程序[0806]
最近抽空又看了下qt,发现用它来实现一些东西真的很容易比如下面这个例子,绘制了个圆形的时钟,但代码却清晰易懂[例子源自奇趣科技提供的例子]因为清晰,所以就只写注释了,吼吼其实也就这么几行代码头文件//clock.h#ifndef CLOCK_H#define CLOCK_H#include QWidget>class Clock :
2015-10-31 11:13:48 568
转载 Qt QGraphics 地图浏览 程序
好吧……又是你妹夫的技术博……首先给出这份练习代码的微云连接:MapWithGraphics 。放心~~博主是好人,不会有毒的~~。其次啊…我总是给练习代码,所以乱七八糟的就别看太多了,只关注重点部分吧!主目录下那三个pic* 文件夹就是地图了,放到F盘下吧,不然程序启动就会崩溃哦…或者自己改代码里面那些读图片的地方也可以。读者可以随意对这份代码进行修改和使用。这份练习
2015-10-30 13:18:49 6773 2
转载 QT学习之QString的arg方法
在QT的QString中,arg方法类似于C中的printf中使用的格式输出符(只是有点类似)。 在QT5的帮助文档中,可以看出以下几点: 使用arg(str1, str2, str3)这种方法进行替换。 使用arg(str1).arg(str2).arg(str3)这种方法进行替换。 使用arg(int, int, int)这种方式进行替换。 解释以下两种方法: 一:使用
2015-10-30 00:34:46 991
转载 Qt编程技巧 Qt随机数的产生
#include首先调用函数 qsrand(QTime(0,0,0).secsTo(QTime::currentTime())); 产生一个进程然后调用函数n = qrand(); n就是所差生的随机数
2015-10-30 00:08:12 1417
转载 类的数组成员变量的初始化
使用STL标准模板库之后,编程时已经很少使用数组和指针,相反,多使用序列容器vector代替之。但事实并不这么理想,在迫不得已的情况下,我们还是会选择使用数组。这里介绍一下当数组作为类的成员变量时,应该怎么对它(数组)进行初始化。在类的构造函数中可以使用成员初始化表初始化各个成员变量,这种方法是很受推荐和赞扬的,因为使用成员初始化表中对成员进行初始化和在构造函数体中对成员赋
2015-10-29 13:12:19 7096 3
转载 C++类成员和数据成员初始化总结
C++为类中提供类成员的初始化列表类对象的构造顺序是这样的:1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员2.进入构造函数后在构造函数中执行一般计算 1.类里面的任何成员变量在定义时是不能初始化的。 2.一般的数据成员可以在构造函数中初始化。 3.const数据成员必须在构造函数的初始化列表中初始化。 4.static要在类的定义外面初始化。
2015-10-29 13:09:54 550
转载 C++中虚析构函数的作用
我们知道,用C++开发的时候,用来做基类的类的析构函数一般都是虚函数。可是,为什么要这样做呢?下面用一个小例子来说明: 有下面的两个类:class ClxBase{public: ClxBase() {}; virtual ~ClxBase() {}; virtual void DoSomething() { cout "Do
2015-10-28 23:23:31 358
转载 C++虚析构函数、纯虚析构函数
虚析构函数析构函数的工作方式是:最底层的派生类(most derived class)的析构函数最先被调用,然后调用每一个基类的析构函数。因为在C++中,当一个派生类对象通过使用一个基类指针删除,而这个基类有一个非虚的析构函数,则结果是未定义的。运行时比较有代表性的后果是对象的派生部分不会被销毁。然而,基类部分很可能已被销毁,这就导致了一个古怪的“部分析构”对象,这是一个泄漏资源。排除
2015-10-28 23:22:48 614
转载 C++ 对象的内存布局(下)
C++ 对象的内存布局(下) 陈皓http://blog.csdn.net/haoel <<<点击这里查看上篇 重复继承 下面我们再来看看,发生重复继承的情况。所谓重复继承,也就是某个基类被间接地重复继承了多次。 下图是一个继承图,我们重载了父类的f()函数。 其类继承的源代码如下所示。其中,每个类都有两个变量,一个是整形(4字节
2015-10-28 22:26:37 348
转载 C++ 对象的内存布局(上)
C++ 对象的内存布局(上) 陈皓http://blog.csdn.net/haoel 点击这里查看下篇>>>前言 07年12月,我写了一篇《C++虚函数表解析》的文章,引起了大家的兴趣。有很多朋友对我的文章留了言,有鼓励我的,有批评我的,还有很多问问题的。我在这里一并对大家的留言表示感谢。这也是我为什么再写一篇续言的原因。因为,在上一篇文章中,我用了的示例都是非
2015-10-28 22:25:06 361
转载 C++ 虚函数表解析
C++ 虚函数表解析 陈皓http://blog.csdn.net/haoel 前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,R
2015-10-28 22:24:27 303
转载 c++虚继承对象的内存布局
c++虚继承对象的内存布局 --VC7.1特别版网上关于c++对象布局的文章挺多,而且《深度探索c++对象模型》(Inside The C++ Object Model 侯捷 译)一书中也很详细地介绍。如果你一点都不了解C++对象的布局,我推荐你看看《深度探索c++对象模型》的第三章,如果你意犹未尽下面的两个系列都很不错:一是陈皓的《C++ 对象的内存布
2015-10-28 22:23:18 387
转载 C++继承内存对象模型
最近研究了一下,C++继承的内存对象模型。主要是读了读http://blog.csdn.net/haoel/article/details/3081328(C++ 对象的内存布局)。很推荐这篇文章。 对这篇文章做了做总结。本文的大部分内容来自于这篇文章中的总结http://blog.csdn.net/haoel/article/details/3081328(C++
2015-10-28 22:22:42 385
转载 c++涉及继承和虚继承时的内存布局
原文地址:c++涉及继承和虚继承时的内存布局 作者:风箫夜吟今天是清明节假期的第二天,天气阴沉,无心于游玩,遂决定宅于实验室。现在来说每天拜读一下大牛的博客已成生活中不可或缺之乐趣!但是俗话说的好:”光说不练假把式!“,今天拜读了浩哥的博客,感触颇多,于是就产生了本篇博文!目的主要还是总结一下自己看到和想到的一些东西,以及遇到的一些问题,关于文中提出的问题受本人水平所限
2015-10-28 22:18:58 364
转载 C++类内存分布
书上类继承相关章节到这里就结束了,这里不妨说下C++内存分布结构,我们来看看编译器是怎么处理类成员内存分布的,特别是在继承、虚函数存在的情况下。工欲善其事,必先利其器,我们先用好Visual Studio工具,像下面这样一步一步来: 先选择左侧的C/C++->命令行,然后在其他选项这里写上/d1 reportAllClassLayout,它可以看到
2015-10-28 22:08:58 417
转载 虚函数在对象中的内存布局
典型地,C++通过虚函数实现多态性。多态性的定义:“无论发送消息的对象属于什么类,他们均发送具有相同形式的消息,对消息的处理方式可能随接受消息的对象而变。”具体地说,“在某个基类上建立起来的类的层次结构中,可以对任何一个派生类的对象中的同名成员函数进行调用,而被调用的成员变量所提供的处理可以随其所属的类而改变。”虚函数首先是一种成员函数,它可以在该类的派生类中被重新定义并被赋予另外一种处理功能。
2015-10-28 22:08:07 622
转载 c++继承中的内存布局(转)
今天在网上看到了一篇写得非常好的文章,是有关c++类继承内存布局的。看了之后获益良多,现在转在我自己的博客里面,作为以后复习之用。——谈VC++对象模型(美)简.格雷程化 译译者前言一个C++程序员,想要进一步提升技术水平的话,应该多了解一些语言的语意细节。对于使用VC++的程序员来说,还应该了解一些VC++对于C++的诠释。 Inside the C++ O
2015-10-28 22:03:05 366
转载 C++ 私有构造函数的作用
很多情况下要求当前的程序中只有一个object。例如一个程序只有一个和数据库的连接,只有一个鼠标的object。通常我们都将构造函数的声明置于public区段,假如我们将其放入private区段中会发生什么样的后果?这意味着什么? 当我们在程序中声明一个对象时,编译器为调用构造函数(如果有的话),而这个调用将通常是外部的,也就是说它不属于class对象本身的调用,假如构造函数是私
2015-10-28 21:24:15 455
转载 私有构造函数
私有构造函数是一种特殊的实例构造函数。它通常用在只包含静态成员的类中。如果类具有一个或多个私有构造函数而没有公共构造函数,则不允许其他类(除了嵌套类)创建该类的实例。例如:class NLog { // Private Constructor: private NLog() {} public static double e = 2.71828;}声明空构造函数
2015-10-28 21:23:25 2872 2
转载 显式调用构造函数和析构函数
今天跟同事聊天,他说到STL源码有用到显示调用析构函数。试一了一下。果然能行。#include iostream>usingnamespace std;class MyClass{public:MyClass(){cout "Constructors" endl;}~MyClass(){cout "Destructors" endl;
2015-10-28 21:22:44 841
转载 谈谈:C++类的“包含”机制
本人在学习Qt的时候发现了一个非常有趣的现象。有很多函数的调用方法都写成了如下的形式:object.func().func2(); 这令小弟着实不懂。在上面这段代码中,第一个对象调用它的成员函数func()是完全没有问题的,但是后面那个func2()就奇怪了。我们只知道,点运算符(.)的作用就是调用对象的成员,但是如
2015-10-27 22:20:37 563
转载 虚函数在对象中的内存布局
典型地,C++通过虚函数实现多态性。多态性的定义:“无论发送消息的对象属于什么类,他们均发送具有相同形式的消息,对消息的处理方式可能随接受消息的对象而变。”具体地说,“在某个基类上建立起来的类的层次结构中,可以对任何一个派生类的对象中的同名成员函数进行调用,而被调用的成员变量所提供的处理可以随其所属的类而改变。”虚函数首先是一种成员函数,它可以在该类的派生类中被重新定义并被赋予另外一种处理功能。
2015-10-27 22:19:31 322
转载 C语言的不完整类型和前置声明
声明与定义(Declaration and Definition)开始这篇文章之前,我们先弄懂变量的declaration和definition的区别,即变量的声明和定义的区别。一般情况下,我们这样简单的分辨声明与定义的区别:建立存储空间的声明称之为“定义”,而把不需要建立存储空间的称之为“声明”。其实更为准确地描述的话,变量的声明可以分为两种情况:(1)一种是需要建立存储空间的。
2015-10-27 21:43:30 977
C#截屏并进行OCR识别
2018-05-10
C# 系统应用之窗体最小化至任务栏及常用操作
2018-05-05
zend studio 12.0.0&zend studio 12.0.1 破解文件
2015-01-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人