程序运行截图如下:

这个实例主要是用qml玩界面。

main.qml文件以及wearable.qml分别是由ApplicationWindow和StatckView。这个StackView用于做导航相关的。

代码如下:

  QQC2.ApplicationWindow {id: window...header: NaviButton {id: homeButton...onClicked: stackView.pop(null)}footer: NaviButton {id: backButton...onClicked: stackView.pop()}QQC2.StackView {id: stackView...onLaunched: stackView.push(page)}}DemoMode {stackView: stackView}DemoModeIndicator {id: demoModeIndicatory: settings.demoMode ? -height : -height * 2anchors.horizontalCenter: parent.horizontalCenterheight: header.heightz: window.header.z + 1}MouseArea {enabled: settings.demoModeanchors.fill: parentonClicked: {// Stop demo mode and return to the launcher page.settings.demoMode = falsestackView.pop(null)}}}

在wearable.cpp中应用QQuickStyle的风格:

 QQuickStyle::setStyle(QStringLiteral("qrc:/qml/Style"));

在C++代码中设置QQuickStyle风格是十分灵活的,他作用于整个应用。

通过实现qml/NaviButton.qml接口完成自定义button类型。在wearable.qml中home按钮以及back按钮都是自定义的。使用properties扩展可以实现控制滑动过度的相关功能:

  QQC2.AbstractButton {id: buttonproperty int edge: Qt.TopEdgeproperty alias imageSource: image.sourcecontentItem: Image {id: image...}background: Rectangle {...}transform: Translate {Behavior on y { NumberAnimation { } }y: enabled ? 0 : edge === Qt.TopEdge ? -button.height : button.height}}

图标绑定了Qt资源文件:/icons。index.theme文件包含了icon主题的内容:

 [Icon Theme]Name=WearableComment=Qt Quick Controls 2 Wearable Demo Icon ThemeDirectories=36x36,36x36@2[36x36]Size=36Type=Fixed[36x36@2]Size=36Scale=2Type=Fixed

同样在C++里的main函数中进行设置:

QIcon::setThemeName(QStringLiteral("wearable"));

Launcher页主要是使用了PathView这个组建。

  PathView {id: circularViewsignal launched(string page)...model: ListModel {ListElement {title: qsTr("World Clock")icon: "worldclock"page: "WorldClock/WorldClockPage.qml"}...ListElement {title: qsTr("Settings")icon: "settings"page: "Settings/SettingsPage.qml"}}delegate: QQC2.RoundButton {...icon.width: 36icon.height: 36icon.name: model.icon...onClicked: {if (PathView.isCurrentItem)circularView.launched(Qt.resolvedUrl(page))elsecircularView.currentIndex = index}}...}

目前官方给出的信息中,个人觉得比较重要的就是这么多,后面将会对代码中的知识点进行分析。

Qt文档阅读笔记-Qt Quick Controls - Wearable Demo实例解析相关推荐

  1. Qt文档阅读笔记-对JSON Save Game官方实例解析

    程序运行截图如下: JSON Save Game例子展示了如何使用QJsonDocument,QJsonObject,QJsonArray保存和加载存档. 许多游戏有存储的功能,允许玩家存储保存游戏进 ...

  2. Qt文档阅读笔记-Qt跨平台库(Qt基本库)

    Qt基本库是所有Qt平台的基础分.他能在所有支持开发的平台和测试平台上跑.这些库在Qt5中已经保持源代码和二进制的兼容. 基本模块(基本库)被其他特殊模块所附加. 下面是Qt基本模块(基本库)的列表: ...

  3. Qt文档阅读笔记-Qt Core的官方解析

    Qt Core 目录 Getting Started Threading and Concurrent Programming Input/Output, Resources, Containers ...

  4. Qt文档阅读笔记-Qt Quick 3D - Simple Example解析

    程序运行截图如下: 还是动的. 官方出这篇博文的目的是如何教我们使用Qt Quick 3D去渲染简单的场景. 首先是设置其场景. 在main.qml文件中设置整个场景,导入QtQuick3D组建,用于 ...

  5. Qt文档阅读笔记-Qt Quick Examples - Text 初步解析

    目录 Hello Fonts Available Fonts Banner Img Tag Text Layout Hello Hello展示了改变字间距和动态展示.使用连续的动画,font.Lett ...

  6. Qt文档阅读笔记-Qt对象模型及deleteLater()杂记

    最近主要在撸官方的自学包.在此作下简短的笔记: Qt对象模型 Qt包含的1500个类可以分为2类 1. identify types: 2. value types: identify types: ...

  7. Qt文档阅读笔记-Qt单元测试中模拟GUI事件

    这里先提下基本概念 官方的模拟GUI事件,就是调用QTest提供的函数,去模拟用户鼠标点击,用户输入等效果.从而达到模拟的功能,感觉这个功能非常的好. 如: QTest::keyClicks()主要是 ...

  8. Qt文档阅读笔记|Qt实践| HTTPS知识点-获取某站点SSL证书

    目录 基本概念 代码与实例 基本概念 这里要先介绍几个类和函数 首先是QSslSocket:这个类提供了客户端和服务器之间的SSL加密socket连接.这个是基于TCP连接,可以传输加密数据,支持的协 ...

  9. Qt文档阅读笔记|Qt工作笔记-setupUi官方解析与实例(widgets中界面与业务分离)

    目录 前言 官方解析 模拟界面与业务分离过程 博主栗子 前言 在最开始创建Qt项目的时候,已经默认添加好了,现在来分析下,这么做有什么意义! 官方解析 void QWidget::setupUi(QW ...

最新文章

  1. php ImageMagick扩展
  2. [免费活动通知]RAD Studio XE8 技术研讨会(上海、成都)
  3. 忘记root密码如何处理
  4. 虚函数和纯虚函数的区别
  5. 掌握jQuery插件开发,这篇文章就够了
  6. 会不会导致内存泄漏_Java内存泄漏!为什么会泄漏?如何泄漏?怎么定位?
  7. Number.parseInt(), Number.parseFloat()
  8. 0x7c97cd12 指令引用的 0x00000014内存。该内存不能为written
  9. 电脑怎么卸载软件干净_极客卸载,还你干净电脑
  10. 登录界面实现记住密码功能
  11. 美股市场:暴风雨前的宁静
  12. gps性能测试软件,VisualGPSXP入门 专业GPS测试软件
  13. 微软苏州二期全面封顶,明年投入使用!三期开工时间已定,研发人才将达5000余人!...
  14. JAVA图片裁剪上传实例______软件开发-帮助类
  15. Figma又崩了,但我们P事没有
  16. javascript英语单词音节拆分_拆分音节拼读法解析
  17. PhpSpreadsheet 基本使用和导入 导出 模版生成Excel文件
  18. c学习笔记 文件输入/ 输出 20210314
  19. 读书笔记--《软技能-代码之外的生存指南》
  20. 平行世界产品分析|冷暖自知的世界

热门文章

  1. 与众不同 windows phone (14) - Media(媒体)之音频播放器, 视频播放器, 与 Windows Phone 的音乐和视频中心集成...
  2. twitter storm源码走读之2 -- tuple消息发送场景分析
  3. [转载] C#面向对象设计模式纵横谈——7. Adapter适配器模式
  4. G1刷机问题 E:error status=7
  5. 程序员夏天格子衫,冬天穿什么?
  6. 报表被老板吐槽又多又丑?因为你没有掌握这些动态报表的技巧
  7. 有一次面一非常想去的 飞鸽传书绿色版 公司
  8. 一个比较简单驱动程序初学者可以看看
  9. 用线程实现动态改变图标
  10. 昨天习题答案大剖析!再接再厉