Qt Quick - Drawer

news2024/11/16 23:37:11

Qt Quick - Drawer使用总结

  • 一、概述
  • 二、使用
    • 1、基础使用
    • 2、特点空间运行
    • 3、与内容转换相互挤占

一、概述

Drawer提供了一个基于滑动的侧边面板,类似于经常在触控界面中使用的侧边面板,为导航提供了一个位置。
在这里插入图片描述

二、使用

1、基础使用

抽屉可以放置在内容项的四个边缘中的任何一个。下面的抽屉靠在窗口的左边缘。

然后,从窗口左侧“拖”出抽屉,打开抽屉。

  import QtQuick 2.14
  import QtQuick.Controls 2.14

  ApplicationWindow {
      id: window
      visible: true

      Drawer {
          id: drawer
          width: 0.66 * window.width
          height: window.height

          Label {
              text: "左边抽屉内容"
              anchors.centerIn: parent
          }
      }
  }

2、特点空间运行

Drawer是一种特殊类型的弹出框,位于窗口边缘之一。默认情况下,Drawer将自己重新作为窗口覆盖层的父元素,因此可以对窗口坐标进行操作。还可以手动将父元素设置为其他元素,以使drawer在特定的坐标空间中运行。

在这里插入图片描述

抽屉可以配置为只覆盖其窗口边缘的一部分。下面的例子演示了如何将Drawer放置在窗口标题下方:

  import QtQuick 2.14
  import QtQuick.Controls 2.14

  ApplicationWindow {
      id: window
      visible: true

      header: ToolBar { }

      Drawer {
          y: header.height
          width: window.width * 0.6
          height: window.height - header.height
		  Label {
              text: "左边抽屉内容"
              anchors.centerIn: parent
          }
      }
  }

3、与内容转换相互挤占

position属性决定了抽屉的可见面积,取值范围在0.0到1.0之间。不能在左侧或右侧窗口边缘设置抽屉的x坐标(或水平外边距),也不能在顶部或底部窗口边缘设置抽屉的y坐标(或垂直外边距)。
在这里插入图片描述

在上图中,应用程序的内容被“推送”到屏幕上。这是通过对内容进行转换来实现的:

  import QtQuick 2.14
  import QtQuick.Controls 2.14

  ApplicationWindow {
      id: window
      width: 200
      height: 228
      visible: true

      Drawer {
          id: drawer
          width: 0.66 * window.width
          height: window.height
      }

      Label {
          id: content

          text: "Aa"
          font.pixelSize: 96
          anchors.fill: parent
          verticalAlignment: Label.AlignVCenter
          horizontalAlignment: Label.AlignHCenter

          transform: Translate {
              x: drawer.position * content.width * 0.33
          }
      }
  }

如果希望应用程序的内容在抽屉打开时保持在原来的位置,则不要应用转换。

抽屉可以通过使抽屉non-modal 和 non-interactive(非模态和非交互式)配置为不可关闭的持久侧板。更多细节请参阅侧面板示例。

注意:在某些平台上,某些边缘可能为系统手势保留,因此不能与Drawer一起使用。例如,顶部和底部边缘可能用于Android和iOS上的系统通知和控制中心。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/419906.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springcloud深度探索

中文官方文档:project - Spring Cloud Config - 《Spring Cloud中文文档》 - 书栈网 BookStackSpring Cloud ConfigFeaturesQuick StartSample Projects Spring Cloud为开发人员提供了工具,用以快速的在分布式系统中建立一些通用方案(例如配…

CDP思科发现协议解析及C/C++代码实现

通常,大多数网络都有几个路由器或交换机,为了便于网络管理,使用网络图或网络图来告诉网络中存在什么类型的设备,以及所有设备如何相互连接,使用的IP地址以及它们属于哪个VLAN的信息。 CDP是一种专有的第二层思科网络协…

Table Transformer做表格检测和识别实践

计算机视觉方面的三大顶级会议:ICCV,CVPR,ECCV.统称ICE CVPR 2022文档图像分析与识别相关论文26篇汇集简介 论文: PubTables-1M: Towards comprehensive table extraction from unstructured documents是发表于CVPR上的一篇论文 作者发布了两个模型&…

22级ACM 4.16 周赛 题解

这场能题解写的感觉没多少其实(真的不是因为懒),既然有人想要题解,那么就随便写一下吧,其实大部分的题都有人写出来,感觉这场真的不需要。 A 题 题解 Count Interval AtCoder - abc233_d_霾まる的博客-CS…

AI绘画王炸功能Control Net安装教程

原文:AI绘画王炸功能Control Net安装教程 - 知乎 AI绘画,最近两大王炸功能出圈了。 一个就是超真实超细节的美女图片,已经快和照片无异了,甚至有人用AI绘画的“女仆照片”开始招募游艇会了,具体教程可以查看Lora这篇…

一键生成元宇宙 AI又杀疯了

人类十几年的进步水平,AI用几个月就能轻易实现。在展示了超强的文本对话能力和一键生图功能后,AI大模型不打算停下,开始挑战搭建3D空间这一更高难度的动作。 这次,Facebook母公司Meta想当一把主导者。几天前,它的首席…

185-二35

Java185-二35单列集合顶层接口collection迭代器增强forlambda表达式list特有方法遍历数据结构数组Linkedlist集合泛型类,泛型方法,泛型结构泛型方法泛型的通配符泛型总结数据结构数据结构(二叉树)前序遍历数据结构(二叉…

crm系统有哪些?具体的功能有哪些?

市面上的CRM系统有很多,例如简道云、销售易、salesforce、纷享销客、SugarCRM等等,这些都是比较知名的,前面也有写过很多关于CRM选型的内容,大家可以点进我的主页翻阅一下。 那么,CRM具体的功能有哪些?下面…

计算机网络 - UDP协议 与 TCP协议可靠性(传输层)

前言 本篇介绍UDP报文格式,认识UDP报文,介绍TCP报文格式,了解TCP可靠性的核心机制,TCP通信中三次握手与四次挥手;如有错误,请在评论区指正,让我们一起交流,共同进步! 文…

EDA基础概念

EDA基础概念EDA和CADCAD工具EDA工具EDA技术实现目标可编程逻辑器件简称PLD发展历程FPGA简介CPLD简介FPGA和CPLD区别是否需要同时学习FPGA和CPLDXilinx(赛灵思)公司介绍(AMD收购)开发工具Xilinx产品Altera(阿尔特拉&…

Qt关于QPainter绘制1px宽度图形带来的问题思考

前言 前段时间遇到这样一个问题,使用QPainter绘制直线的时候,设置了笔宽为1像素,但是绘制出来的线条却是2px宽度,而且设置的画笔颜色很明显是降低了透明度,不是最“纯正”的颜色。 当时就感觉非常奇怪,明明…

【FPGA实验1】FPGA点灯工程师养成记

对于FPGA几个与LED相关的实验(包括按键点灯、流水灯、呼吸灯等)的记录,方便日后查看。这世界上就又多了一个FPGA点灯工程师了😏 成为一个FPGA点灯工程师分三步:一、按键点灯1、按键点灯程序2、硬件实现二、流水灯1、流…

Vue2-黑马(二)

目录: (1)vue2-基础-属性绑定 (2)vue2-事件绑定 (3)vue2-双向绑定 (4)vue2-计算属性 (1)vue2-基础-属性绑定 属性与js数据绑定: …

react-router原理

前端路由的原理 自己来监听URL的改变,改变url,渲染不同的组件(页面),但是页面不要进行强制刷新(a元素不行)。 hash模式,localhost:3000/#/abc 优势就是兼容性更好,在老版IE中都可以运行缺点是…

DNS配置

TCP/IP提供了通过IP地址来连接到设备的功能,但对用户来讲,记住某台设备的IP地址是相当困难的,因此专门设计了一种字符串形式的主机命名机制,这些主机名与IP地址相对应。 在IP地址与主机名之间需要有一种转换和查询机制&#xff0c…

CANopen | 对象字典OD 06 - 创建对象字典变量,通过TPDO定时发送

文章目录一、前言二、实验目的三、对象字典OD四、TPDO1定时发送tx_Value变量一、前言 该笔记的程序: github 二、实验目的 CANopen从站有一个变量tx_Value,映射到TPDO1上。接着,CANopen从站每1S发送一次TPDO1,将tx_Value发送出去。 三、…

PasteSpider之文件同步软件的介绍

作为PasteSpider系统中的一大特色,那就是文件的差量同步和配置同步。能够实现对不同需求的良好实现。 在网站https://www.pastecode.cn/下载文件同步软件后,完全解压到自己的文件夹内,然后双击“SpiderSyncFile”,如下图: 打开登陆…

Nginx模板自动化

背景 在日常工作中,我们经常需要创建Nginx配置文件的模板,以便在不同的环境中快速部署和配置Nginx服务器。然而,这样的任务通常需要重复性高、耗时长,且容易出错。为了加快这些任务的完成,并提高工作效率,…

C/C++开发,认识opencv各模块

目录 一、opencv模块总述 二、opencv主要模块 2.1 opencv安装路径及内容 2.2 opencv模块头文件说明 2.3 成熟OpenCV主要模块 2.4 社区支持的opencv_contrib扩展主要模块 2.5 关于库文件的引用 一、opencv模块总述 opencv的主要能力在于图像处理,尤其是针对二维图…

字节8年测试经验,送给想要学习自动化测试的同学6条建议

我的职业生涯开始和大多数测试人一样,开始接触都是纯功能界面测试。那时候在一家电商公司做测试,做了有一段时间,熟悉产品的业务流程以及熟练测试工作流程规范之后,效率提高了,工作比较轻松,也得到了更好的…