Can I force a child widget to stays on top when created inside my main window init function?
Its only working for me when the widget is created in app scope (as here PyQt4 How keep a QWidget always on top?).
(Tested on Raspberry Pi OS)
from PyQt5 import QtCore
from PyQt5.QtWidgets import (
QApplication, QMainWindow, QWidget
)
class Ui_MainWindow(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
self.setWindowTitle("MainWindow")
self.resize(400, 300)
Widget = Ui_Widget(self)
Widget.show()
class Ui_Widget(QWidget):
def __init__(self, parent=None):
QWidget.__init__(self, parent)
self.setWindowFlags(self.windowFlags() | QtCore.Qt.Dialog)
self.setWindowTitle("Widget")
self.resize(400, 300)
self.move(200, 150)
if __name__ == "__main__":
import sys
app = QApplication(sys.argv)
MainWindow = Ui_MainWindow()
MainWindow.show()
# Widget = Ui_Widget(MainWindow)
# Widget.show()
sys.exit(app.exec_())