qml 悬浮框右键点击弹出菜单栏

qml 悬浮框右键点击弹出菜单栏

首先窗口有主窗口和悬浮窗口

大致想了有3种办法:

1.在悬浮窗口内部动态加载(Loader)右键菜单(使用系统自带的Menu),

这种办法可以实现,但是菜单栏有一个缺陷,加载的菜单项目只能在

父窗口内部,对于悬浮框的情况可能会无法到达有效的效果

2.第二种办法可以在主窗口中动态(Loader)或者静态加载右键菜单(使用系统自带的Menu)

这样时可以实现的,但是对于悬浮框来说,由于他的右键相应在悬浮框,所以菜单应该跟随着

悬浮框移动,这样就有一个bug,j就是当悬浮框在主窗口之外点击菜单的时候,菜单栏不会再悬浮框上面,

而是再主窗口里面,还有一个bug,就是菜单栏的显示会在悬浮框的下面,因为悬浮框时置顶的,菜单栏

是系统的菜单栏,qml系统会让该菜单栏(Menu)再父窗口之上(可能还会再父窗口里面的某些子窗口之上),

绘制自定义的悬浮框之下,所以可能也不是很符合要求

3.还有一种办法,就是自定义菜单栏,不用系统的菜单栏,自定义菜单栏的flags为

Qt.Tool或者Qt.SubWindow等,再结合上面的第一种办法或者第二种办法,就可以解决

上面提到的一些问题

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值