Qt Quick模块是编写QML应用程序的标准库。虽然Qt QML模块提供QML引擎和语言基础结构,但Qt Quick模块提供了使用QML创建用户界面所需的所有基本类型。它提供了一个可视画布,包括用于创建和动画可视组件,接收用户输入,创建数据模型和视图以及延​​迟对象实例化的类型。

Qt Quick模块提供了QML API,它提供了用于使用QML语言创建用户界面的QML类型,以及用于使用C ++代码扩展QML应用程序的C ++ API。

注意:还可以使用一组基于Qt Quick的UI控件来创建用户界面。有关更多信息,请参阅Qt Quick Controls 2。

对于那些刚接触QML和Qt Quick的人,请参阅QML应用程序,了解编写QML应用程序的介绍。

下面通过简单的小代码对Quick中的 部分控件的结合使用 制作一个简单的图片查看器

Image

Text

Button

Rectangle

FileDialog

BusyIndicator 

import QtQuick 2.9
import QtQuick.Window 2.11
import QtQuick.Controls 2.4
import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4
import QtQuick.Dialogs 1.3
Window{id:mainWindowwidth: 600height: 400visible: trueRectangle{id:view_image_rectagnleanchors.top:parent.topanchors.topMargin: 10anchors.left: parent.leftanchors.leftMargin: 10anchors.right: parent.rightanchors.rightMargin: 10anchors.bottom: parent.bottomanchors.bottomMargin: 60border.color: "#55ffff"border.width: 2radius: 5Image {id: imageViewanchors.fill: parentanchors.margins: 10source: ""asynchronous: truecache: falsefillMode: Image.PreserveAspectFitonScaleChanged: {if(imageView.status == Image.Loading){busy.running = true}else if(status == Image.Ready){busy.running = false}else if(status == Image.Error){pathText.text = "图片加载失败"}}}}Button{id:openBtnimplicitWidth: 100implicitHeight: 20anchors.top: view_image_rectagnle.bottomanchors.topMargin: 10anchors.left: view_image_rectagnle.leftanchors.bottom: parent.bottomanchors.bottomMargin: 10text:"Open"style: ButtonStyle{background: Rectangle{anchors.fill: parentborder.color: "#55eeff"border.width: Control.activeFocus ? 5 : 2}}MouseArea{anchors.fill: parentonClicked: {//打开文件fileDialog.open()}}}//显示文件路径Text{id:pathTextanchors.top: openBtn.topanchors.left: openBtn.rightanchors.leftMargin: 10verticalAlignment: Text.AlignVCenterpadding: 10text:"1111111111111"}//文件选择框FileDialog{id:fileDialogtitle:"请选择您要展示的图片"nameFilters: ["Image Files(*.jpg *.png *.bmp)"]onAccepted: {console.log(fileUrl)pathText.text = fileUrlimageView.source = fileUrl}onRejected: {console.log("用户取消了选择")}}//繁忙指示器BusyIndicator{id:busyrunning: falsez:2}}

  效果:

转载于:https://www.cnblogs.com/guolongzheng/p/11126198.html

Qt Quick QMl学习笔记 之图片浏览器相关推荐

  1. Qt Quick Qml 之QML与C++ 混合编程学习

    <QML与C++ 混合编程学习> 1. 在 QML 中使用 C++ 类和对象 1) C++ 类的修改 2) 注册 QML 类型 3) 在 QML 中导入类型 4) 在 QML 创建由 C+ ...

  2. QT Quick Qml 实例——滑块拖动颜色框的平移(Gradient、drag、clip、transform、antialiasing)

    <实例--滑块拖动颜色框的平移> 1. 简介 2. 详解 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧! QML其它文章请点击这里:     QT QUICK QM ...

  3. Qt Quick QML 实例之疯狂数字游戏(QML C++混合编程、翻译、QSetting )【建议收藏】

    文章目录 一.开门见山 二.最基本的框架(v0.1) 1. 后端数据处理 2. 导出 C++ 对象的 QML 的属性 3. 前台 UI 数据 三.完善执行逻辑(v0.2) 四.发布版本(v1.0) 1 ...

  4. QT Quick QML 实例之 Popup 弹出界面

    QT Quick QML 实例之 Popup 弹出界面 一.演示 二.实现过程 1. 居中弹出 2. 正下方弹出 所有的热爱都要不遗余力,真正喜欢它便给它更高的优先级,和更多的时间吧! GIT工程文件 ...

  5. Qt 5.12学习笔记--QML性能策略

    Qt 5.12学习笔记--QML性能策略 1 简介 2 时间因素 2 性能分析 3 JavaScript 部分 4 绑定 5 类型转换 6 解析属性 6 属性绑定 7 序列提示(Sequence ti ...

  6. qml学习笔记(二):可视化元素基类Item详解(上半场anchors等等)

    原博主博客地址:http://blog.csdn.net/qq21497936 本文章博客地址:http://blog.csdn.net/qq21497936/article/details/7851 ...

  7. Qt 快速入门学习笔记

    Qt 快速入门学习笔记 环境安装 环境配置以及安装 安装包下载地址 1.windows安装 msvc编译器模块需要安装Windows软件开发工具包. MinGW是Windows平台使用GNU工具导入库 ...

  8. Qml学习笔记:cpp与qml的交互调用方式

    Qml学习笔记:cpp与qml的交互调用方式 如何用在cpp中调用qml的方法 main.qml main.cpp 如何在qml中调用C++的方法函数 main.cpp main.qml 如何使用qm ...

  9. QT 5.9学习笔记

    QT 5.9学习笔记 写在前面 S1:初识QT:QT简介 S2:QT在Windows和Linux平台下的安装 Qt调出模态与非模态对话框 写在前面 本文章为我在学习QT5.9时的记录文章,里面会涉及所 ...

最新文章

  1. js如何运行python代码_python中执行javascript代码
  2. python包pip安装_python包管理之Pip安装及使用
  3. 搜索背后的奥秘——浅谈语义主题计算
  4. 程序员之路──如何学习C语言并精通C语言
  5. 记录爬取信用中国,里面的行政许可内容,行政处罚,守信激励的内容,并以excel形式显示
  6. 【离散数学】二元运算的性质
  7. python concat_python的concat等多种用法详解
  8. WEB-INF 目录下的文件无法直接浏览器访问
  9. 【狂神css笔记】美化网页元素
  10. ORACLE与.NET类型对应关系(转)
  11. Python编程:pycharm开发工具汉化步骤
  12. 不擅长演讲?值得技术收藏的PPT演讲底层逻辑--大树模型
  13. java 时区 mysql 时区:时区在程序和数据库中的作用及其机制
  14. 用纯JavaScript实现的微信二维码图片生成器
  15. 蒙氏三段卡---马三段卡
  16. 游戏本地化翻译有哪些内容需要注意
  17. 人工智能有哪些方向?什么方向有前景?
  18. 用VSCode编写Latex时遇到的问题(Mac系统下)
  19. 数据结构——行车路线规划(大路小路)
  20. Synology NAS群晖DS218play 运行内存测试

热门文章

  1. 01屏幕增强 sap_SAP (MM01 MM02 MM03)屏幕增强
  2. python 监控内存_使用python写一个监控不同机器的使用内存情况并使用flask出图
  3. 树莓派C语言点灯,树莓派3 b GPIO 点亮小灯泡
  4. MongoDB固定集合(capped collection)
  5. Linux 服务器惊现比特币勒索事件,腾讯云安全专家来支招
  6. ZooKeeper 典型的应用场景
  7. 如何写一个pyton模块
  8. objective-c block 旧版详解
  9. 方法文件Matlab调用动态链接库
  10. 检测到 LoaderLock Message Microsoft.DirectX.dll”正试图在 OS 加载程序锁内执行托管代码。...