1

I have the following problem where I want to customize the QDockwidget event function and calling super() already gives me an error withouth Code in it. Error:

TypeError: invalid result from DockWindow.event(), an integer is required (got type NoneType)

Here is my actual Code:

from PyQt5.QtWidgets import QApplication, QDockWidget
from PyQt5.QtWidgets import QMainWindow
from PyQt5 import QtCore

import sys

class DockWindow(QDockWidget):
    def __init__(self, parent=None):
        super(DockWindow, self).__init__(parent, QtCore.Qt.Widget)

    def event(self, ev):
        # I actually want to do stuff here. But following already produces an error.
        super(DockWindow, self).event(ev)

class MainWindow(QMainWindow):
    def __init__(self, parent=None):
        super().__init__(parent, QtCore.Qt.Window)
        self.dock_window = DockWindow(parent=self)
        self.addDockWidget(QtCore.Qt.RightDockWidgetArea, self.dock_window)

def main(argv):
    app = QApplication(sys.argv)

    win = MainWindow()
    win.show()

    app.exec_()

if __name__ == '__main__':
    main(sys.argv)

EDIT:

return super(DockWindow, self).event(ev)  

does the trick!

Babrorian
  • 11
  • 2

0 Answers0