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核心编程》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Python游戏趣味编程 电子书
1.易于学习和理解:先讲解较少的语法知识,通过游戏案例逐步引入新的语法知识; 2.为初学者量身打造:案例从易到难,所有程序的代码均不超过100行; 3.趣味性强:12个案例,涵盖了多种游戏类型,寓教于乐; 4.可拓展性强:提供练习题和参考答案,巩固知识,训练逻辑思维; 5.配套素材齐全:提供完整源代码和分步骤源代码、游戏素材、游戏效果演示视频,可通过异步社区观看游戏开发步骤讲解视频; 6.全彩印刷。 美国教育家杜威曾说过:“大多数的人,只觉得五官能接触的、实用的东西才有趣味,书本上的趣味是没有的。” 《Python游戏趣味编程》通过介绍12个由易到难的有趣游戏案例的编写过程,带领读者学习用Python开发趣味游戏,从而提升读者对编程的兴趣和能力。 《Python游戏趣味编程》把趣味游戏开发应用于Python编程教学,通过介绍12个由易到难的有趣游戏案例的编写过程,带领读者从零基础开始学习。全书共13章,系统讲解了Python语言基本概念、开发环境搭建、循环、列表、数据类型、条件、复合运算符、字符串拼接、布尔变量、数组、函数、列表操作、面向对象编程等基础知识,还介绍了图片操作、文件读写、声音播放、异常处理等较为实用的编程技能,所有这些知识和技能,都通过游戏案例展示其用法。贯穿各章,还给出了一些练习,帮助读者巩固所学的知识。附录A给出了这些练习题的答案,附录B给出了Python语法知识在书中相关章节的索引。 《Python游戏趣味编程》适合不同年龄、不同层次的Python编程初学者阅读和自学,也可以作为中学生、大学生学习程序设计的教材和少儿编程培训机构的参考教材。 本书适合以下人群阅读: 想要让孩子学习Python编程的家长,或者想要自己教孩子编程的家长。 学习过其他编程语言,想要快速学习Python的人。 对计算机游戏感兴趣,想要尝试Python游戏编程的人。 想要学习Python编程的中学生和大学生。 少儿编程培训机构的老师和学生。 任何对计算机编程感兴趣、特别是初次接触编程的人。 本书中制作和讲解的小游戏 弹跳的小球 美丽的圆圈画 疯狂的小圆圈 飞翔的小鸟 见缝插针 飞机大战 勇闯地下一百层 贪吃蛇 拼图游戏 消灭星星 坚持一百秒 趣味图像生成
Python少儿趣味编程 电子书
适读人群 :任何想要学习Python或初次接触编程的人;Python语言的初学者、计算机专业的学生。尤其适合信息技术课教师或培训机构的老师以及青少年读者(初高中学生)阅读。 《Python少儿趣味编》由少儿编程畅销图书作者精心编写,是少儿学习Python编程的趣味指南,全书共17章,按照由简到难、逐步深入的方式组织各章内容。《Python少儿趣味编》精心选取内容,注重难易适度,语言通俗易懂,代码示例丰富。在每章的末尾,还给出了一些练习题并给出了解答。 《Python少儿趣味编》具有以下特色: ● 精心选取和组织内容,注重难易适度——涵盖基础知识、趣味应用和热门应用。 ● 坚持“做中学”的理念和方法——通过详细的示例和课后练习帮助读者学习和掌握。 ● 体现趣味性——用海龟给图绘制的机器猫、小猪佩奇等卡通角色,编写贪吃蛇游戏,对古典名著《西游记》分词。 ● 增强可拓展性——逐步扩展和改进的“成绩单”示例程序,章末习题既巩固知识,也拓展编程技能。 《Python少儿趣味编》适合想要学习Python 编程基础的少年儿童(尤其是10 岁以上的孩子)及想要教孩子学习编程的家长阅读,也适合少儿编程培训班的老师用作少儿编程培训的教材。 本书带领读者编写的趣味程序包括: ● 帮Johnson 找到回家的路; ● 逐步扩展和改进的“成绩单”示例程序; ● 用海龟绘图绘制的机器猫; ● 用海龟绘图绘制小猪佩奇; ● 弹球游戏; ● 编写贪吃蛇游戏; ● 对古典名著《西游记》分词。
Python趣味创意编程 电子书
本书基于Python编程,实现了15个有趣的互动场景,循序渐进地向读者展示了这些场景的实现过程,帮助读者掌握Python编程。
Python编程轻松进阶 电子书
阅读本书,理解代码底层逻辑,像职业程序员一样使用Python。
趣味掌控板编程 电子书
本书适合5~8年级编程初学者自学,也适合中小学和校外培训机构的信息技术教师、创客教师教学使用。