当前位置: 首页 > article >正文

Qml-Popup的使用

Qml-Popup的使用

Popup介绍

  1. Popup 是qml中弹窗内界面的基本类型,被Dialog、Drawer、ToopTip、Menu等继承;

  2. Popup在窗口中弹出窗口布局如下:
    在这里插入图片描述

  3. Popup的属性大致可分为:几何属性(x,y,z,width,height等),四个方向相关的布局属性(margin、padding、inset),modal(是否为模态),dim(背景是否暗掉)、焦点相关的、弹窗关闭策略(closePolicy)、过渡动画相关属性( enter、exit);具体属性介绍参照Qt的帮助文档

  4. 方法和信号都是和弹窗打开关闭相关的,具体介绍参照Qt的帮助文档

  5. Popup 中font,palette,附加属性 由父窗口传递,而非可视化父对象。Popup中子元素的font,palette,等要受Popup中设置font,palette值影响,如果Popup中未设置,受Popup父窗口(一般是ApplicationWindow或者QAppication设置的全局的font 、palette)影响。

Popup的实例代码

import QtQuick
import QtQuick.Controls

//Popup 是qml中弹窗内界面的基本类型,被Dialog、Drawer、ToopTip、Menu等继承;
//Popup 主要由 Background 和 ContentItem 组成,在四个方向的Margin,inset padding属性,以及焦点、关闭策略、是否是模态等属性组成,几何属性

//使用按钮打开一个弹窗
Item{

    height: 480
    width: 320

    //在Button下方弹出一个弹窗
    Button{
        id:idBut
        text: "Popup"
        height: 30
        anchors.centerIn: parent

        onClicked: {
            idPopup.open();
            idPopup.y = idBut.height
        }

        Popup{

            id:idPopup
            width: 150
            height: 150
            modal: true
            dim:true                                                                    //dim 控制背景是否变暗,true变暗,false,背景不变
            closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutside                //esc | 弹窗外点击退出

            //Popup 中font,palette,附加属性 由父窗口传递,而非可视化父对象,即 Button中设置palette对Popup无影响
            //Popup中子元素的font,palette,等要受Popup影响
            palette.windowText: "red"
            font.bold: true
            font.pixelSize: 20

            //可以使用contentItem形式,也可以直接使用子对象进行布局,contentItem是弹窗中内容显示区域
            contentItem: Label{
                anchors.fill: parent
                anchors.margins: 10
                text: "I am Popup"                              //是个红色字,粗体,20号

            }

            //弹窗区域背景设置
            background: Rectangle{
                color:Qt.rgba(1.0,1.0,0.0,0.2)                  //黄色0.2透明度 1像素,红色边框,圆角半径5
                border.width: 1
                border.color: "red"
                radius: 5
            }
        }

    }
}

Popup实例代码运行结果如下:

1.此实列点击“Popup”按钮,弹出一个Popup弹窗。
在这里插入图片描述


http://www.kler.cn/news/362254.html

相关文章:

  • stm32单片机个人学习笔记11(ADC模数转换器)
  • 【图像去噪】论文精读:CycleISP: Real Image Restoration via Improved Data Synthesis
  • 十五、行为型(迭代器模式)
  • 新书速览|Android智能座舱开发:从源码到实践
  • 若依框架定制
  • STM32的Flash页擦除操作的疑惑
  • 【Linux】Linux进程地址空间
  • 关于QT cmake项目添加了.ui文件build未自动生成ui_xxx.h,错误提示找不到这个头文件问题处理
  • C++进阶之路:再谈构造函数、static成员、友元(类与对象_下篇)
  • 06 go语言(golang) - 循环语句运算符
  • 界面耻辱纪念堂--可视元素04
  • 【设计模式-原型】
  • Apple 新品发布会亮点有哪些 | Swift 周报 issue 61
  • 毕设项目分享 基于python的答题卡识别评分系统
  • 3-6 AUTOSAR RTE数据一致性管理
  • Git Push(TODO)
  • RuoYi-Vue 若依代码生成 速学
  • 重构手法整理
  • 【编程语言】C++ 中 vector 初始化的多种方法详解
  • Git_命令
  • Golang 并发编程:Context 包的使用与并发控制
  • MongoDB安装配置及配置和启动服务
  • 使用Docker启动的Redis容器使用的配置文件路径等问题以及Python使用clickhouse_driver操作clickhouse数据库
  • 微知-RDMA中的四大M,以及Mellanox驱动中的MAD为什么叫MA的D?(managent agent、Management Datagrams)
  • 与ai一起作诗(《校园清廉韵》)
  • MATLAB和Python电车电池制造性能度量分析