QtQuick核心编程

QtQuick核心编程

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

Qt Quick开发基础教程,涵盖桌面与Android平台技术,实例丰富。

内容简介

本书从基础开发环境搭建和Qt Creator快速介绍开始,着力于QML语言基础、Qt Quick基本元素,辅以JS语言介绍,帮读者快速熟悉Qt Quick的基本开发;详细讲解了Qt Quick的关键主题,如动画、Model/View,让读者一册在手,别无他求;还介绍了QML与C++混合编程、Canvas等高级主题,提供多个精彩实例,概念清晰,用途明确。本书内容适用于桌面与Android平台,覆盖了Android开发的多个主题,如拍照、定位、传感器、多媒体等。

章节目录

版权信息

内容简介

前言

为什么写作本书

致谢

本书适合谁

你需要什么技术基础

你需要什么软硬件环境

术语表

鸡一嘴鸭一嘴

联系作者

第1章 Qt Quick概览

1.1 什么是Qt Quick

1.2 我们能用Qt Quick做什么

第2章 Qt开发环境快速上手

2.1 Qt Creator简介

2.2 Qt Creator下载与安装

2.2.1 下载

2.2.2 安装

2.3 Hello Qt Quick App

2.3.1 创建项目

2.3.2 运行项目

2.3.3 在手机上运行

2.4 Qt Creator集成开发环境

2.4.1 欢迎界面

2.4.2 编辑界面

2.4.3 调试界面

2.4.4 项目选项设置

2.5 善用佳软之Qt Quick开发工具

2.5.1 Qt帮助

2.5.2 Qt Quick Designer

2.5.3 命令行环境

2.5.4 qmlscene

第3章 QML语言基础

3.1 对象

3.2 表达式

3.3 注释

3.4 属性

3.4.1 属性命名

3.4.2 属性的类型

第4章 Qt Quick入门

4.1 Hello Qt Quick App再分析

4.1.1 基本程序结构

4.1.2 使用Item作为QML根对象

4.2 闲话Window

4.2.1 Window细说

4.2.2 ApplicationWindow

4.3 基本元素初体验

4.3.1 Rectangle

4.3.2 颜色

4.3.3 渐变色

4.3.4 Item

4.3.5 使用锚布局

4.3.6 响应按键

4.3.7 Text

4.3.8 Button

4.3.9 ButtonStyle

4.3.10 Image

4.3.11 BusyIndicator

4.4 图片浏览器的第一个版本

4.4.1 QML代码

4.4.2 FileDialog

第5章 ECMAScript初探

5.1 语法

5.1.1 区分大小写

5.1.2 弱类型

5.1.3 语句后的分号可有可无

5.1.4 注释

5.1.5 代码块

5.2 变量

5.2.1 变量声明

5.2.2 变量命名规则

5.2.3 关键字

5.2.4 保留字

5.2.5 原始值与引用值

5.3 原始类型

5.3.1 typeof运算符

5.3.2 Undefined类型

5.3.3 Null类型

5.3.4 Boolean类型

5.3.5 Number类型

5.3.6 String类型

5.4 类型转换

5.4.1 转换成字符串

5.4.2 转换成数字

5.4.3 强制类型转换

5.5 对象

5.5.1 Object

5.5.2 String

5.5.3 RegExp

5.5.4 Array

5.5.5 Math

5.5.6 Date

5.5.7 你不可不知的对象碎碎念

5.6 函数

5.6.1 函数语法

5.6.2 函数的返回值

5.7 表达式和运算符

5.7.1 表达式

5.7.2 算术运算符

5.7.3 赋值运算符

5.7.4 比较和逻辑运算符

5.7.5 条件运算符

5.7.6 位运算符

5.7.7 关键字运算符

5.7.8 逗号运算符

5.7.9 数组和对象存取运算符

5.7.10 优先级

5.8 程序控制语句

5.8.1 if-else语句

5.8.2 switch语句

5.8.3 for语句

5.8.4 while语句

5.8.5 do-while语句

5.8.6 break、continue 和 return

5.9 使用console

5.9.1 输出日志信息

5.9.2 断言

5.9.3 计时器

5.10 内置对象

5.10.1 Global对象

5.10.2 JSON对象

5.11 来自QML的基本类型

5.11.1 url

5.11.2 list

5.11.3 enumeration

5.11.4 font

5.12 宿主对象Qt

5.12.1 Qt对象的属性

5.12.2 Qt对象的枚举类型

5.12.3 Qt对象的方法

第6章 Qt Quick事件处理

6.1 Qt Quick中的信号与槽

6.1.1 连接QML类型的已知信号

6.1.2 如何寻找感兴趣的信号

6.1.3 定义自己的信号

6.1.4 信号与槽的连接

6.2 鼠标

6.2.1 变色矩形示例

6.2.2 MouseArea

6.3 键盘

6.3.1 会动的文本实例

6.3.2 Keys与信号处理器

6.4 定时器

6.4.1 定时器对象介绍

6.4.2 倒计时程序

6.5 触摸事件

6.5.1 PinchArea

6.5.2 缩放与旋转实例

6.5.3 多点触摸

第7章 组件与动态对象

7.1. Component(组件)

7.1.1 嵌入式定义组件

7.1.2 在单独文件中定义组件

7.2 使用Loader

7.2.1 Loader详细介绍

7.2.2 从文件加载组件

7.2.3 利用Loader动态创建与销毁组件

7.3 在ECMAScript中动态创建对象

7.3.1 从组件文件动态创建Component

7.3.2 从QML字符串动态创建Component

7.3.3 销毁动态创建的对象

第8章 Qt Quick元素布局

8.1 定位器

8.1.1 Row

8.1.2 Colomun

8.1.3 Grid

8.1.4 Flow

8.1.5 定位器嵌套

8.2 布局管理器

8.2.1 GridLayout

8.2.2 RowLayout

8.2.3 ColumnLayout

8.3 其他的布局方式

第9章 Qt Quick常用元素介绍

9.1 行编辑(Textlnput与TextField)

9.1.1 TextInput

9.1.2 TextField

9.2 文本块(TextEdit与TextArea)

9.2.1 TextEdit

9.2.2 TextArea

9.3 ExclusiveGroup

9.4 RaidoButton

9.4.1 RadioButtonStyle

9.4.2 实例:选择你喜欢的手机操作系统

9.5 CheckBox

9.5.1 CheckBoxStyle

9.5.2 实例:那些你喜欢的爱情电影

9.6 GroupBox

9.7 ComboBox

9.7.1 ComboBoxStyle

9.7.2 ComboBox综合演示

9.8 ProgressBar

9.8.1 ProgressBarStyle

9.8.2 进度条综合演示

9.9 TabView

9.9.1 标签控件简单示例

9.9.2 使用 TabViewStyle

9.10 Slider

9.10.1 SliderStyle

9.10.2 滑块简单示例

9.11 Flickable

9.12 Screen对象

第10章 Canvas(画布)

10.1 开始之前

10.1.1 画布

10.1.2 画师

10.1.3 画笔

10.1.4 画刷

10.1.5 坐标系

10.1.6 图元

10.2 基本绘图模式

10.3 绘制路径

10.4 绘制文本

10.5 绘制图片

10.6 变换

10.7 裁切

10.8 图像合成

10.9 挖头像实例

10.9.1 项目创建

10.9.2 C++代码

10.9.3 QML代码分析

第11章 C++与QML混合编程

11.1 在QML中使用C++类和对象

11.1.1 定义可以导出的C++类

11.1.2 注册一个QML可用的类型

11.1.3 完整的ColorMaker实例

11.1.4 将一个C++对象导出为QML属性

11.2 在C++中使用QML对象

11.2.1 查找一个对象的孩子

11.2.2 使用元对象调用QML对象的方法

11.2.3 callQml 示例

11.3 美图实例

11.3.1 美图实例效果

11.3.2 图像处理算法

11.3.3 源码情景分析

第12章 动画

12.1 动画元素分类

12.2 基本动画元素

12.2.1 Animation

12.2.2 PropertyAnimation

12.2.3 NumberAnimation

12.2.4 ColorAnimation

12.2.5 RotationAnimation

12.2.6 PathAnimation

12.2.7 SmoothedAnimation

12.2.8 SpringAnimation

12.3 组合动画

12.3.1 ParallelAnimation

12.3.2 SequentialAnimation

12.4 State

12.4.1 使用State变换文本的小示例

12.4.2 State详解

12.4.3 PropertyChanges

12.4.4 ParentChange

12.4.5 AnchorChanges

12.4.6 StateChangeScript

12.5 Transition

12.6 协同动画元素

12.6.1 Behavior

12.6.2 ParentAnimation

12.6.3 AnchorAnimation

12.7 实例:射泡泡游戏

12.7.1 游戏介绍

12.7.2 源码情景分析

第13章 Model/View

13.1 ListView

13.1.1 ListView的简单使用

13.1.2 header

13.1.3 footer

13.1.4 访问与修改 Model

13.1.5 动画效果

13.1.6 section

13.2 XmlListModel的用法

13.2.1 XPath简介

13.2.2 XmlRole

13.2.3 XmlListModel的属性与方法

13.3 使用C++ Model

13.3.1 C++实现QML可用的Model

13.3.2 将Model导出到QML中

13.3.3 QML代码的变化

13.4 TableView

13.4.1 一个简单的TableView实例

13.4.2 定制表格外观

13.4.3 动态修改TableView

13.5 实例:股票跟踪

13.5.1 你的样子

13.5.2 项目创建

13.5.3 main.cpp分析

13.5.4 TableView外观定制

13.5.5 QML与C++混合应用的国际化

13.5.6 Qt on Android 应用国际化

13.6 GridView

13.7 PathView

13.7.1 Path简介

13.7.2 PathAttribute

13.7.3 PathPercent

13.7.4 使用PathView

13.8 找图看实例

13.8.1 功能与界面

13.8.2 QML多界面切换

13.8.3 创建自己的QML按钮

13.8.4 本地浏览

13.8.5 网络图片搜索

13.9 Repeater

13.9.1 model为数字

13.9.2 model为字符串列表

13.9.3 model为对象列表

13.9.4 model为ListModel

13.10 ListView的下拉刷新效果

13.10.1 C++ Model

13.10.2 QML代码分析

第14章 多媒体

14.1 MediaPlayer

14.1.1 播放音乐

14.1.2 视频

14.1.3 多媒体元信息

14.2 拍照

14.2.1 配置Camera

14.2.2 设置取景器VideoOutput

14.2.3 捕获静态图片

14.2.4 简单的拍照实例

第15章 网络

15.1 大珠小珠落玉盘 ——支持网络的对象

15.1.1 Image

15.1.2 Qt.createComponent

15.1.3 Loader对象

15.1.4 QQmlApplicationEngine

15.1.5 QQuickView

15.1.6 MediaPlayer

15.2 QML里的HTTP

15.2.1 XMLHttpRequest类介绍

15.2.2 GET小示例

15.2.3 POST数据

15.3 使用C++代码完成复杂的网络操作

第16章 定位

16.1 类库介绍

16.1.1 coordinate

16.1.2 QtPositioning

16.1.3 Position

16.1.4 PositionSource

16.2 团购查询实例

16.2.1 百度API说明

16.2.2 手机运行效果

16.2.3 源码分析

第17章 综合实例之文件查看器

17.1 文件查看器的运行效果

17.2 再论ApplicationWindow

17.3 MenuBar

17.3.1 Menu

17.3.2 MenuItem

17.3.3 Action

17.4 ToolBar

17.5 使用XMLHttpRequest加载本地文件

17.6 使用标准对话框

17.6.1 ColorDialog

17.6.2 MessageDialog

17.7 源码分析

17.7.1 QML代码

17.7.2 C++代码

17.7.3 项目文件

第18章 综合实例之聊哈

18.1 界面效果

18.2 分析

18.2.1 适应多种分辨率

18.2.2 聊天界面实现分析

18.2.3 录音与回放

18.2.4 聊天协议

18.2.5 MessengerManager

18.2.6 AccessPointModel

附录A 常见问题

该怎么学习Qt Quick

如何发布Qt Quick应用

(1)Windows平台

(2)Android版本

怎样保持Android手机屏幕常亮

我想创建可扩展的UI来适应各种屏幕

Qt Quick应用如何国际化

Qt Quick应用体积太大了

有没有静态库版本的Qt

我不想让别人看见我的QML文档

Android上的Qt Quick控件看起来和系统风格不一样

自己做一些Qt Quick控件怎么样

Qt Quick不支持文件操作吗

想用数据库来着……

说真的,本书示例代码在哪儿可以下载

参考文献

聊聊写作期间听的音乐

QtQuick核心编程是2015年由电子工业出版社出版,作者安晓辉。

得书感谢您对《QtQuick核心编程》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Go语言高级编程 电子书
Go语言进阶实战,CGO编程web编程书。
Python少儿趣味编程 电子书
适读人群 :任何想要学习Python或初次接触编程的人;Python语言的初学者、计算机专业的学生。尤其适合信息技术课教师或培训机构的老师以及青少年读者(初高中学生)阅读。 《Python少儿趣味编》由少儿编程畅销图书作者精心编写,是少儿学习Python编程的趣味指南,全书共17章,按照由简到难、逐步深入的方式组织各章内容。《Python少儿趣味编》精心选取内容,注重难易适度,语言通俗易懂,代码示例丰富。在每章的末尾,还给出了一些练习题并给出了解答。 《Python少儿趣味编》具有以下特色: ● 精心选取和组织内容,注重难易适度——涵盖基础知识、趣味应用和热门应用。 ● 坚持“做中学”的理念和方法——通过详细的示例和课后练习帮助读者学习和掌握。 ● 体现趣味性——用海龟给图绘制的机器猫、小猪佩奇等卡通角色,编写贪吃蛇游戏,对古典名著《西游记》分词。 ● 增强可拓展性——逐步扩展和改进的“成绩单”示例程序,章末习题既巩固知识,也拓展编程技能。 《Python少儿趣味编》适合想要学习Python 编程基础的少年儿童(尤其是10 岁以上的孩子)及想要教孩子学习编程的家长阅读,也适合少儿编程培训班的老师用作少儿编程培训的教材。 本书带领读者编写的趣味程序包括: ● 帮Johnson 找到回家的路; ● 逐步扩展和改进的“成绩单”示例程序; ● 用海龟绘图绘制的机器猫; ● 用海龟绘图绘制小猪佩奇; ● 弹球游戏; ● 编写贪吃蛇游戏; ● 对古典名著《西游记》分词。
Python编程轻松进阶 电子书
阅读本书,理解代码底层逻辑,像职业程序员一样使用Python。
Python编程做中学 电子书
一本零基础的Python编程入门书。
趣味掌控板编程 电子书
本书适合5~8年级编程初学者自学,也适合中小学和校外培训机构的信息技术教师、创客教师教学使用。