演示截图

工程演示中会看到的两个窗体分别是一个文件选择对话框和一个图片浏览器窗体。

1、文件选择对话框界面如下:

因为博主是在window下运行的代码,所以Qt Quick默认就适用了Windows系统的对话框(风格)。不同的操作系统上会有不同的原生文件选择对话框,如果没有的话Qt Quick会使用默认的QML文件对话框。

2、图片浏览器也是我们使用QML代码实现的图片浏览器窗体如下:

工程代码

import QtQuick 2.6
import QtQuick.Window 2.2
import QtQuick.Controls 2.1
import QtQuick.Controls.Styles 1.2
import QtQuick.Dialogs 1.2//主窗体
Window {visible: true;width: 600;height: 480;minimumWidth: 480;minimumHeight: 380;title: "图片浏览器";//等待提示图元BusyIndicator {id: busyIndicator;running: false;anchors.centerIn: parent;z: 2;}//状态文本标签Text {id: stateLabel;visible: false;anchors.centerIn: parent;z: 3;}//图片Image {id: imageViewer;asynchronous: true;cache: false;anchors.centerIn: parent;fillMode: Image.PreserveAspectFit;onStatusChanged: {if(imageViewer.status == Image.Loading) {busyIndicator.running = true;stateLabel.visible = false;}else if(imageViewer.status == Image.Ready) {busyIndicator.running = false;}else if(imageViewer.status == Image.Error) {busyIndicator.running = false;stateLabel.visible = true;stateLabel.text = "ERROR";}}}//按钮Button {id: openFile;text: "Open";anchors.left: parent.left;anchors.leftMargin: 8;anchors.bottom: parent.bottom;anchors.bottomMargin: 8;onClicked: fileDialog.open();z: 4;}//图片路径文本Text {id: imagePath;anchors.left: openFile.right;anchors.leftMargin: 8;anchors.verticalCenter: openFile.verticalCenter;font.pixelSize: 18;}//文件对话框FileDialog {id: fileDialog;title: "Please choose a file";nameFilters: ["Image Files (*.jpg *.png *.gif)","Bitmap Files (*.bmp)", "* (*.*)"];selectMultiple: true;onAccepted: {imageViewer.source = fileDialog.fileUrls[0];var imageFile = new String(fileDialog.fileUrls[0]);imagePath.text = imageFile.slice(8);}}
}

代码比较简单直观,主要是使用了Button、Image、Text、BusyIndicator、FileDialog等基本的Qt Quick元素。通过使用这些基本元素的属性以及信号处理器我们只用了不到100行代码就实现了一个简单的图片浏览器APP,可见Qt Quick是如此方便。

基于QML的图片浏览器相关推荐

  1. 基于RecyclerView的图片浏览器

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.作业要求 二.具体实现 1.布局代码 2.程序代码 总结 前言 基于RecyclerView的图片浏览器 一.作业 ...

  2. 嵌入式linux图片浏览器,基于嵌入式Linux图片浏览器的设计与实现.doc

    基于嵌入式Linux图片浏览器的设计与实现 PAGE PAGE II 本科学生毕业论文(设计) 题目(中 文): 基于嵌入式Linux图片浏览器的设计与实现 (英 文): The design and ...

  3. linux图片浏览器设计目的,基于嵌入式Linu图片浏览器的设计与实现.doc

    基于嵌入式Linu图片浏览器的设计与实现 本科学生毕业论文(设计) 题目(中 文):基于嵌入式Linux图片浏览器的设计与实现(英 文):The design and implementation o ...

  4. 【181122】VC++基于MFC的图片浏览器(有多种特效)源代码

    源码下载简介 一个完整的毕业设计+论文+PPT演示,VC++基于MFC的图片浏览器,在进行图片浏览或打开.关闭.切换的时候都带有多种特效,实现PCX.BMP.TGA.GIF.JPEG的读写显示,并可以 ...

  5. 基于Qt5的图片浏览器QHImageViewer

    一.简介 QHImageViewer基于Qt5,图片和滚动条使用QPainter绘制. 图片格式支持bmp/png/jpg/jpeg. 支持图片旋转.还原.缩放.拖动. 拖动图片时,释放鼠标图片会惯性 ...

  6. 7.QML Qt Quick——基于Qt Quick Controls 2实现图片浏览器

    Qt Quick Controls 2提供了一组UI控件,例如按钮,标签,复选框,滑块等(用之查之即可).用于在Qt Quick中创建用户界面.UI控件很多,这里通过一个图片浏览器的实现来逐步讲解 图 ...

  7. Crawler:反爬虫机制之基于urllib库+伪装浏览器+代理访问(代理地址随机选取)+实现下载某网址上所有的图片到指定文件夹

    Crawler:反爬虫机制之基于urllib库+伪装浏览器+代理访问(代理地址随机选取)+实现下载某网址上所有的图片到指定文件夹 导读 基于反爬虫机制之基于urllib库+伪装浏览器+代理访问(代理地 ...

  8. Qt基于Qml图片翻转演示

    效果: qml源码 import QtQuick 2.12 import QtQuick.Controls 2.12ApplicationWindow {id: rootvisible: truewi ...

  9. 基于qml创建最简单的图像处理程序(1)-基于qml创建界面

    <基于qml创建最简单的图像处理程序>系列课程及配套代码 基于qml创建最简单的图像处理程序(1)-基于qml创建界面 http://www.cnblogs.com/jsxyhelu/p/ ...

最新文章

  1. c语言翻译成php,C语言如何把它翻译成中文
  2. 【 FPGA 】状态机的模型之Moore型状态机
  3. 如果知道两点的经纬度 如何算两点之间的距离
  4. Error: bin/bash^M: bad interpreter: no such file o
  5. 被解放的姜戈08 远走高飞
  6. Erlang 的安装配置,编译和运行
  7. leetcode------Word Search
  8. 新骗子举报收录系统源码
  9. iso硬盘安装 凤凰os_Windows硬盘安装凤凰系统(Phoenix OS)可以用电脑玩吃鸡啦~
  10. 微信小程序 禁止弹框下面的内容滑动
  11. 桌宠java_桌宠 下了Java还是说没法登上去 PHILIPS 电脑
  12. Css实现雷达扫描动画效果
  13. js修改服务器域名,春哥详解:业务域名 JS接口安全域名 网页授权域名
  14. nvidia-docker的安装
  15. ksql kafka
  16. substring与substr的区别
  17. wordpress v3.3.1空间上传php,怎么上传wordpress到虚拟主机
  18. Excel VBA编程的常用代码
  19. Pspice——RC时间常数
  20. java 微信报关_微信开放平台,_请求微信报关接口返回的数据,微信开放平台 - phpStudy...

热门文章

  1. 为什么比尔·盖茨可以有大成就?
  2. 城市交通指挥与应急疏导广播系统方案
  3. Excel计算年龄(足岁)问题:Excel中datedif和VBA中的datediff函数介绍
  4. EasyUI-DataGrid下数据库数字替换成文本信息显示以及不同状态显示不同颜色
  5. 使用谷歌浏览器(Chrome)内核浏览器朝页面崩溃,设置也无法打开问题解决方法
  6. win7开机卡在桌面无图标,任务管理器打不开的一种解决办法
  7. 【原创】火狐浏览器网页翻译
  8. 鸿蒙系统测试失败,ANR-WatchDog-ohos: 一个简单的监测程序,可检测到鸿蒙系统的 ANR(Application Not Response-应用程序无响应)错误并引发有意义的异常...
  9. linux安装binutils
  10. lisp 套料_CAD自动编号插件下载