Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python
- import sys
- from PySide.QtCore import *
- from PySide.QtGui import *
- class CloseEventFilter(QObject):
- def eventFilter(self, target, event):
- print event.type(), target
- return False
- if __name__ == '__main__':
- #Qt boilerplate
- app = QApplication(sys.argv)
- main_window = QMainWindow()
- main_layout = QHBoxLayout()
- mdi_area = QMdiArea(main_window)
- ev_filter = CloseEventFilter()
- qframe1 = QFrame()
- qframe2 = QFrame()
- qframe1.installEventFilter(ev_filter)
- qframe2.installEventFilter(ev_filter)
- qhbox1 = QHBoxLayout()
- qhbox2 = QHBoxLayout()
- qframe1.setLayout(qhbox1)
- sw1 = mdi_area.addSubWindow(qframe1, Qt.WA_DeleteOnClose)
- qframe2.setLayout(qhbox2)
- sw2 = mdi_area.addSubWindow(qframe2, Qt.WA_DeleteOnClose)
- #Make the MDI area the central widget
- main_window.setCentralWidget(QWidget())
- main_window.centralWidget().setLayout(main_layout)
- main_layout.addWidget(mdi_area)
- main_window.show()
- app.lastWindowClosed.connect(lambda: mdi_area.closeAllSubWindows())
- app.exec_()
Add Comment
Please, Sign In to add comment