自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (9)
  • 收藏
  • 关注

转载 GLSL 三种变量类型(uniform,attribute和varying)

1.uniform变量uniform变量是外部程序传递给(vertex和fragment)shader的变量。因此它是application通过函数glUniform**()函数赋值的。在(vertex和fragment)shader程序内部,uniform变量就像是C语言里面的常量(const ),它不能被shader程序修改。(shader只能用,不能改)如果uniform变量在verte...

2019-12-24 17:25:56 991

转载 跟我一起写Makefile

跟我一起写Makefile陈皓(博客地址:http://blog.csdn.net/haoel/article/deta...

2019-08-27 21:20:24 218

转载 QT之登录对话框验证码

有时候在登录界面需要验证码功能,这样能够防止被恶意程序攻击,验证码必须动态随机产生,并且有一定的识别难度。解决方案: 1.随机产生验证码 2.在验证码区域绘制噪声 3.验证码颜色随机变化 4.继承已有QLabel控件进行重绘随机产生验证码: for (int i = 0; i < letter_number; ++i) //letter_number为验证码位数 ...

2018-07-18 14:39:13 2361

原创 QML之电气模拟开关(下)

本文主要是实现电气模拟开关的优化,功能包括点击鼠标左键开关状态切换,点击左键的同时拖动鼠标实现开关拖拽,点击鼠标右键开关旋转,滚动滚轮放大缩小开关,点击新增/移除按钮加入/移除开关main.qmlimport QtQuick 2.7import QtQuick.Window 2.2import QtQuick.Controls 2.0Window { id:myWindow ...

2018-07-17 16:37:21 489

转载 UML类图

一、UML类图1、类类(Class)封装了数据和行为,是面向对象的重要组成部分,是具有相同属性、操作、关系的对象集合的总称。在系统中,每个类都具有一定的职责,职责指的是类要完成什么样的功能,要承担什么样的义务。一个类可以有多种职责,设计得好的类一般只有一种职责。在定义类的时候,将类的职责分解成为类的属性和操作(即方法)。类的属性即类的数据职责,类的操作即类的行为职责。设计类是面向对象设计中...

2018-07-17 10:37:13 2986 1

原创 QML之电气模拟开关(上)

本文主要使用QML绘制了一个电气模拟开关,主要用到sqrt和pow计算两点之间的距离,反正切atan计算对应角度然后进行线段旋转,这样就实现了模拟开关的效果,其中的switchStatus开关默认状态等可以从xml文件解析得到,实现动态加载 代码如下:import QtQuick 2.7import QtQuick.Window 2.2import QtQuick.Controls ...

2018-07-17 09:28:38 743

转载 C++ Json 的几个操作

1,读含有数组的jsonconst char* str = "{\"HELK\": [\"id\",\"name\",\"yantao\",\"gender\",\"Male\"],\"code\": 100,\"msg\": \"\",\"files\": \"\"}&quo

2018-07-13 20:55:29 2484

原创 QT屏蔽qDebug()、qWarning()打印信息

QT编译程序时,有时候需要用qDebug()打印信息,但太多了之后手动一个个屏蔽也麻烦,删除却又怕下次需要,这时候就需要预定义宏在工程文件.pro里面添加 DEFINES += QT_NO_WARNING_OUTPUT\ QT_NO_DEBUG_OUTPUT 然后rebuild all。这样就能去掉qDebug的打印了 也可以设置 Release...

2018-07-13 20:38:55 4037

原创 QML调用C++:QJsonArray、QJsonObject、QByteArray数据类型

在QML与C++的交互过程中,除了常用的不同属性转换,本文主要讲解QJsonArray、QJsonObject、QByteArray类型在QML中的使用,首先在cpp定义一个类注册到QML中,QML通过调用对应函数接口获取数据并显示QJsonArraycpp中: QJsonArray CppQJson::getJsonArrayData(){ QJsonObject objec...

2018-07-13 15:11:33 6486

原创 C++11新特性运用:auto decltype std::bind lambda 范围for 模板类函数 回调函数等

本文主要讲解C++11新特性运用:1.主要讲述回调函数:普通函数作为回调,类成员函数回调 2.auto decltype 运用 自动类型及自动类型推导 3.std::bind的运用:绑定值或std::placeholders 成员变量 成员函数 普通函数 lambda 模板函数 嵌套bind 绑定引用 绑定智能指针容器 4.模板函数定义及使用 .pro记得加上 CONFI...

2018-07-12 23:39:23 455

原创 QJsonObject、QJsonArray相互转换QByteArray

本文主要讲解QJsonObject、QJsonArray与QByteArray之间的相互转化,QJsonDocument构造函数中使用QJsonArray和QJsonArray,并涉及到 QJsonValue转化为QJsonArray,QJsonObject,bool等QJsonDocument QJsonDocument(const QJsonObject &object) QJ...

2018-07-12 23:35:56 31815 3

原创 QUiLoader、QFormBuilder动态加载界面

有时候我们设计程序,需要前端设计和功能实现相分离,前端设计人员和功能实现人员只要事前沟通好相关组件的名称等,就可以进行独立开发,能提高效率。QUiLoader、QFormBuilder类允许应用程序在运行过程中使用存储在UI文件或插件路径指定的信息来动态创建用户界面。 配置信息 .pro文件中,QUiLoader、QFormBuilder类需要分裂使用 uitools designer模块 ...

2018-07-10 16:35:40 1526

原创 QWidget调用QML界面,并交互(下)

在上篇文章中,主要介绍了QWdiget与QML交互的常规方法,本文将介绍通过单例及信号中转类实现交互:

2018-07-09 22:46:52 5774

原创 Qt/C++ 之pro讲解

注释 从“#”开始,到这一行结束。TEMPLATE 模板变量是为了告诉qmake为这个应用程序生成哪种makefile。下面是可供使用的选择: TEMPLATE = app app -建立一个应用程序的makefile。默认值 lib - 建立一个库的makefile。 vcapp - 建立一个应用程序的VisualStudio项目文件。 vc...

2018-07-01 16:53:11 1439

原创 QML中ListView的几种数据模型

在QML中,经常会用到ListView控件,我们主要用到MVC模式,下面介绍几种常用数据模型,其中包括QML和C++模型ListModel:ListModel是一个简单的ListElement容器,每个容器都包含数据角色。其中内容可以动态定义,也可以在QML中显式定义。 ListModel { id:m_model ListElement {...

2018-07-01 14:05:23 7602 4

原创 C++和QML混合编程(下):C++中调用QML

C++中调用QML,主要通过调用QML对象成员,方法以及与QML信号关联:1.C++中使用QML对象成员Item{ property int someValue: 200 } 为了能够在C++中访问QML定义的成员变量someValue,可以使用QQmlProperty的read()和write()、QObject::setProperty()和QObject::Prope...

2018-07-01 12:29:02 1889

原创 C++和QML混合编程(上):QML中调用C++

QML是一门描述性语言,拥有JavaScript扩展格式的语法结构。使用QML编程能够快速设计出好看的界面,但是有些复杂的功能不能完美实现,这时候就需要C++提供逻辑。使用属性、方法属性、方法返回值和信号参数值从C++传输数据到QML.1.QML中注册C++QML中注册C++有两种方法,通过qmlRegisterType或rootContext()定义Message类,在main...

2018-07-01 11:36:39 1351 2

原创 QWidget调用QML界面,并交互(上)

在QWidget加载QML文件 ,在加载过程中把qml文件添加到资源文件,在pro文件中添加QT += quickwidgets实现在设计师里面放置如下界面 点击显示QML按钮显示对应QML界面,QWidget界面可与QML界面进行交互。 cpp代码部分1.点击按钮显示QML,对应QML界面显示出来 QUrl source(“qrc:/qmlTes...

2018-06-30 00:05:16 13155 6

转载 C/C++ 常用的函数与方法

1,创建多级目录#include <string>#include <direct.h> //_mkdir函数的头文件#include <io.h> //_access函数的头文件using namespace std;void CreateDir( const ...

2018-06-29 17:02:08 631

QWidget和QML交互,通过元对象函数和单例模式及信号中转类

QWidget与QML交互,通过调用元对象函数方法 重点:通过注册Widget单例类和SignalManager信号中转类,实现交互,这种方法的好处在于讲QML文件作为资源加载到QWidget中,并且在QML中使用Connections自动连接信号,方便管理,运用对象和单例模式思想

2018-07-09

QWidget无标题窗口,可随意缩放拖动

实现自定义无标题窗口拖动,鼠标移动到上下左右周围8个位置改变鼠标形状,能自由缩放窗体,无bug

2018-07-01

QML做的简单的TIM界面

用纯qml做了一个简单的TIM登录界面,实现了简单的界面效果

2018-07-01

QWidget中进程间通信

1.使用Windows消息机制 ::SendMessage process1发送消息,process2接受消息 2.使用内存共享 QSharedMemory sharedmemory发送QImage到内存 3.使用共享内存 QSharedMemory 数据类型为自定义结构体 sendMemory发送数据,ReceivedMemory接受数据

2018-07-01

QSqlQueryModel模型在QML的ListView

QSqlite本地数据库,C++注册类注册模型在qml中显示,能够增添、删除、查询等功能,利用QSqlQueryModel

2018-07-01

QML中LIstView的几种数据模型

主要涉及在qml中ListView显示,使用了ListModel、ObjectModel、QStringList、QList、QAbstractListModel作为数据模型,其中使用ObjectModel能省去delegate.

2018-07-01

C++与QML方法互调

主要测试QML和C++的相互调用: 1.QML中调用C++方法,设置或者获取C++属性,连接C++信号到QML槽 2.连接QML信号到C++槽,C++设置或者获取QML属性,C++中调用QML方法 3.main.cpp中注册C++类为qml上下文属性或者注册C++类

2018-07-01

QWidget加载QML界面,并通过信号槽交互

QWidget通过QQuickWidget嵌入QML界面,QWidget与QML界面互相发送信号进行交互

2018-06-30

QML开发的图像轮播界面

QML开发的图像轮播界面,利用PathView做的,下载编译可以直接用,无bug

2018-06-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除