PyQt4 : How can i toggle the "Stay On Top" behavior?

pmav99 picture pmav99 · Jan 31, 2011 · Viewed 9.8k times · Source

I want to create an app, where the user will decide it the main window will stay always on top of the other apps.

In PyQt4 it is easy to create a window that will stay always on top. This is covered here : PyQt: Always on top

What I want to have a widget (menu item, checkbox etc) that will toggle this behavior on or off. So far i haven't found a way to reset the original behavior.

thank you

UPDATE After the suggestion of İsmail 'cartman' Dönmez, I searched a bit more and I found an implementation of the WindowFlags example in PyQt4.

It can be found here

Answer

Rosh Oxymoron picture Rosh Oxymoron · Jan 31, 2011

This should disable it:

window.setWindowFlags(window.windowFlags() & ~QtCore.Qt.WindowStaysOnTopHint)

This should enable it:

window.setWindowFlags(window.windowFlags() | QtCore.Qt.WindowStaysOnTopHint)