大佬们,请问如何让 PyQt5 的控件悬浮在子窗口上方?

2020-06-13 18:23:41 +08:00
 Leon6868


这个 sublime 是使用SetParent(hwnd, int(self.winId()))实现的
我让这个蓝色的按钮悬浮在 sublime 上方,请问如何实现?

2172 次点击
所在节点    Python
3 条回复
imn1
2020-06-13 19:06:56 +08:00
没看懂
做成 QDock 不行么?
march1993
2020-06-13 19:56:21 +08:00
setparent 应该不够?应该变成内嵌的一个 document 才行?
imn1
2020-06-13 20:30:38 +08:00
几个方案
把蓝色按钮做成 ——
1.overlay widget,背景透明,下层可见,但可见部分是覆盖性质,不能点击穿透,估计你不是要这种
2.QDockWidget,并设置为浮动
3.一个单独的无边框可拖动的 window/widget,设置 windowFlag 为 ontop

我理解 parent 主要作用是座标、控件属性、父类子类方法相互调用,诸如此类继承
想你这个实际蓝色按钮和子窗口并无什么座标或属性继承,无必要用 parent,代码中理清 namespace 能传递信号就够了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/681287

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX