Qt Quick 与 QML语言(初学笔记1)
Qt Quick
Qt Quick是一些新的UI技术的集合,用来帮助开发者创建一种现在越来越多用于手机、多媒体播放器、机顶盒以及其他便携式设备上的直观的、现代的、流畅的用户界面。简单来说,Qt Quick是一种高级的用户界面技术,使用它可以轻松的创建供移动和嵌入式设备使用的动态触摸式界面和轻量级应用程序。Qt Quick主要由3部分组成:一个改进的Qt Creator IDE(其中包含了Qt Quick设计器)、新增的简单易学习的QML语言和新加入Qt库中名为QtDeclarative的模块。Qt Quick的主页网址是:http://qt-project.org/doc/qt-5/qtquick-index.html
在Qt Quick的世界里面,用户界面以及它们的行为使用QML来描述。QML是对jacascript的一种扩展,可以让开发者和设计者利用一个声明性语法来使用QML元素指定的每一个用户界面。这些元素师一个图形了行为的构建模块的集合,可以组合在一起形成各种组件,可以是一个简单的按钮,也可以是一个支持网络的完整的应用程序。QML完善了javascript和Qt现有的基于QObject的类型系统间的整合,在语言级别上添加了对自动属性绑定和透明网络传输的支持。
Qt的QtDeclarative模块实现了QML语言和对它使用的元素之间的接口,该模块还提供了一个C++接口,可以用来在Qt/C++进行扩展。
QML
QML(Qt Meta – Object Language, Qt元对象语言)是一个用来描述应用程序的用户界面的声明式语言。在QML中,一个用户界面被指定位一个拥有属性的对象树。这里各种各样的对象被通称为元素。因为javascript被用作QML的脚本语言,所以,如果想深入学习QML,是需要有一定的javascript基础的。如果对HTML和CSS等网页技术有一定了解也是很有帮助的,不过这不是必须的。
QML是高层次的描述性语言,其命令和得体的元素可以平衡Qt库的功能和效率,使用可执行直观功能的命令非常容易。绘制一个矩形,展示图片,及应用程序事件——都可以在这个陈述性(declarative)程序中完成。这种语言也允许使用JacaScript灵活控制这些命令,实现高层次的用户界面逻辑。为方面定义元素,通常QML元素带有各种属性,例如,如果要定义一个圆,那么就可能有一个半径作为属性。使用导入的元素构建用户界面是QML和Qt Quick的一大特点。
推荐学习资料:
1.《Qt及Qt Quick开发实战精解》霍亚飞
2.《Qt Quick中文手册》
3. Qt官方学习资料:
Qt Developer Guides
Introduction to Application Development with Qt Quick
Qt Quick Application Developer Guide for Desktop
Qt Quick Painting using Canvas Item
Particles and Graphics Effects in Qt Quick 2
Developing an arcade game with Qt3D
Qt OpenGL Tutorial
作者的百度网盘分享: http://pan.baidu.com/s/1i3onWbz
Qt Quick 与 QML语言(初学笔记1)的更多相关文章
- Qt Quick 和qml介绍
很多人不了解Qt Quick和Qml,还有很多人对其存在偏见.这篇文章就是来向这些有困惑的人介绍一下其是什么,有什么特点. 首先,这两个是一个东西吗? 答案:是的.但是,具体来说,Qt Quick是框 ...
- qt quick中qml编程语言
Qt QML 入门 — 使用C++定义QML类型 发表于 2013 年 3 月 11 日 注册C++类 注册可实例化的类型 注册不实例化的QML类型 附带属性 注册C++类 注册可实例化的类型 如 ...
- 【Qt】Qt Quick 之 QML 与 C++ 混合编程详解
Qt Quick 之 QML 与 C++ 混合编程详解 - CSDN博客 专栏:Qt Quick简明教程 - CSDN博客 .
- Qt Quick 之 QML 与 C++ 混合编程具体解释
Qt Quick 技术的引入.使得你能够高速构建 UI ,具有动画.各种绚丽效果的 UI 都不在话下.但它不是万能的.也有非常多局限性,原来 Qt 的一些技术,比方低阶的网络编程如 QTcpSocke ...
- Qt Quick实现的疯狂算数游戏
使用 Qt Quick 写了个小游戏:疯狂算数.支持 Windows 和 Android 两个平台. 游戏简单,但牵涉到下面你的 Qt Quick 主题: 自己实现一个按钮 自适应分辨率 国际化 QM ...
- Qt Quick 简单教程
上一篇<Qt Quick 之 Hello World 图文详解>我们已经分别在电脑和 Android 手机上运行了第一个 Qt Quick 示例—— HelloQtQuickApp ,这篇 ...
- Qt Quick 事件处理之信号与槽(foruok的博客)
前面两篇文章<QML 语言基础>和<Qt Quick 简单教程>中我们介绍了 QML 语言的基本语法和 Qt Quick 的常见元素,亲们,通过这两篇文章,您应该已经可以完成简 ...
- Qt Quick 基本元素初体验
Qt Quick 作为 QML 语言的标准库,提供了很多基本元素和控件来帮助我们构建 Qt Quick 应用,这节我们简要地介绍一些 Qt Quick 元素. 一. 基本可视化项 1.1 Item I ...
- Qt Widgets、QML、Qt Quick的区别
Qt Widgets.QML.Qt Quick的区别 简述 看了之前关于 QML 的一些介绍,很多人难免会有一些疑惑: Q1:QML 和 Qt Quick 之间有什么区别? Q2:QtQuick 1. ...
随机推荐
- 使用Redis作为消息队列服务场景应用案例
一.消息队列场景简介 "消息"是在两台计算机间传送的数据单位.消息可以非常简单,例如只包含文本字符串:也可以更复杂,可能包含嵌入对象.消息被发送到队列中,"消息队列&qu ...
- C++中关于const的思考
在学习C++的过程中,经常被什么时候使用const.为什么使用const以及怎么使用const关键字这样的问题所困扰,以下是我对const的使用总结. 1.值替代 使用#define的确单缺点,第一: ...
- HDOJ 1995 汉诺塔V
Problem Description 用1,2,-,n表示n个盘子,称为1号盘,2号盘,-.号数大盘子就大.经典的汉诺塔问 题经常作为一个递归的经典例题存在.可能有人并不知道汉诺塔问题的典故.汉诺塔 ...
- HDU 4727 The Number Off of FFF 2013年四川省赛题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4727 题目大意:队列里所有人进行报数,要找出报错的那个人 思路:,只要找出序列中与钱一个人的数字差不是 ...
- SPI,UART,I2C都有什么区别,及其各自的特点
区别: SPI:高速同步串行口.3-4线接口,收发独立.可同步进行 UART:通用异步串行口.按照标准波特率完成双向通讯,速度慢 I2C:一种串行传输方式,三线制,网上可找到其通信协议和用法的 3根线 ...
- 动态更换view类的背景---StateListDrawable的应用
StateListDrawable可以根据View的不同状态,更换不同的背景 可以应用如EditText,Button等中,以Button为例 系统中默认的按钮被按下的颜色和未点击时的颜色不一样,该种 ...
- SQL 存储过程 分页 分类: SQL Server 2014-05-16 15:11 449人阅读 评论(0) 收藏
set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go -- ============================================= -- Au ...
- GWT(Google Web Tookit) Eclipse Plugin的zip下载地址(同时提供GWT Designer下载地址)
按照Eclipse Help->Install new software->....(这里是官方安装文档:http://code.google.com/intl/zh-CN/eclipse ...
- cocos2d与cocos2d-X中的draw和update
像其它的游戏引擎一样,我们有两个不同的方法来完成draw和update. 1: Draw:每一个CCNode都有一个draw方法,每一帧都会调用.我们只在这个方法里做描绘的事情. 2: Update: ...
- Android中fragment_main.xml文件里的组件获取的问题
package com.dhy.phonedial; import android.app.Activity; import android.app.Fragment; import android. ...