QMainWindow.move()
是否将主窗口的位置绑定到屏幕?
我正在开发一个PyQt5应用程序,该应用程序将无框窗口放置在屏幕上的某个位置,靠近触发该窗口显示事件的系统任务栏图标。
代码中的逻辑不是很聪明,但似乎可以解决问题:
systray_icon_pos = self.status_icon.geometry().center()
self.move(systray_icon_pos.x() - self.width() / 2,
systray_icon_pos.y())
用户抱怨该窗口显示在屏幕外,而在我的桌面上,该窗口不会超出屏幕边界,即使我修补该代码以将大量数字作为move
参数进行硬编码也是如此。我以为是因为我们使用的是不同的桌面环境(我使用Mate,他使用Gnome),但是在测试时,我确实观察到了他描述的行为。我只是无法复制它。
此外,Internet上的某些人还使用move(-50000, -50000)
通过将其置于屏幕之外来暂时隐藏窗口(例如here)。
我在the docs中找不到任何明确提及。