import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QMenuBar, QAction
class AnotherWindow(QWidget):
def __init__(self):
super(AnotherWindow, self).__init__()
"""
Works the same as a normal window (it's a window) so you
can add things like `setWindowTitle` and such.
"""
class MainWindow(QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
action = QAction('&New window'. self)
action.triggered.connect(self.new_window)
menubar = QMenuBar(self)
self.setMenuBar(menubar)
menubar.addAction(action)
def new_window(self):
self.another_window = AnotherWindow()
self.another_window.show()
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())