QML的Popup遇到的坑

QML 的坑真的有点多,一个小小的Popup 遇到的坑这么多

坑1.  不要用老版本的Popup 

我用帮助小助手,随手找了个 Popup版本是 import QtQuick.Controls 2.14(Qt 推荐的)

发现编译后没有界面,没有任何有用的提示。

我以为代码写错了,于是随手拷贝了一些 帮助的例子代码

 Popup {
          id: popup
          x: 100
          y: 100
          width: 200
          height: 300
          modal: true
          focus: true
          closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutsideParent
      }

编译后没有任何界面

于是我手动改成了 

import QtQuick.Controls 2.2

别问我为什么,是灵感,是灵感。

于是其他界面元素有了。但唯独Popup 没有。

于是我增加个 visible : true

别问我为什么,这是灵感,灵感。

才出现了 Popup。

QML 是个好东西,但灵感太多,太多。希望Qt 官方,改改帮助文档。 听说 Qt 帮助工程师退休了,估计他也闲不住。。

另外 在QML 的 Popup 是没办法 超越 Window 显示的。和Qt的 QDialog 是不一样的。

需要实现只能 重新开个 Window

=====

有时会遇到 Popup 要和某个控件anchor 的情况,可以写个透明的父类 Item 做对齐,然后 Popup.x = 0 即可,这样Popup的 位置就好控制了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值