Non ho avuto fortuna con i metodi precedenti, ho finito per dover usare direttamente l'API di win32, usando un hack per la versione C here. Questo ha funzionato per me:
from win32gui import SetWindowPos
import win32con
SetWindowPos(window.winId(),
win32con.HWND_TOPMOST, # = always on top. only reliable way to bring it to the front on windows
0, 0, 0, 0,
win32con.SWP_NOMOVE | win32con.SWP_NOSIZE | win32con.SWP_SHOWWINDOW)
SetWindowPos(window.winId(),
win32con.HWND_NOTOPMOST, # disable the always on top, but leave window at its top position
0, 0, 0, 0,
win32con.SWP_NOMOVE | win32con.SWP_NOSIZE | win32con.SWP_SHOWWINDOW)
window.raise_()
window.show()
window.activateWindow()
fonte
2014-09-22 08:56:46
Grazie mille. Funziona. – redice
Questo non funziona per me se sto facendo funzionare la mia finestra dal terminale !!! –
Ha funzionato bene con Ubuntu Unity! –