title: AttributeError: "Dialog" object has no attribute 'setupUi'
body: <p>I made two forms on pyqt5 - qt-designer. One is the Main Form and the second is a Dialog which I will use for user input. I converted both to py code.</p>
  
  <p>First of all I should inform you that I do not modify the converted Ui.py files. I prefer to have an extra "Main" file where I set each modification. I do this so that I won't have to make the extra changes each time I modify with the Ui files.</p>
  
  <p>So, I added a second class on my Main file and tried to call it from my MainForm Class through a menu item. Here is some example code:</p>
  
  <pre><code>class MainForm(QMainWindow):
      def __init__(self, parent=None):
          super(MainForm, self).__init__(parent)
          self.ui = Ui_MainForm()
          self.ui.setupUi(self)
  
          self.ui.actionMenu1.triggered.connect(self.open_my_dialog)
  
      def open_my_dialog(self):
          my_dialog = QDialog()
          my_dialog.ui = MyDialog()
          my_dialog.ui.setupUi(my_dialog)
          # MainForm.hide(self)
          my_dialog.exec_()
          my_dialog.show()
  
  
  class MyDialog(QDialog):
      def __init__(self, parent=None):
          super(MyDialog, self).__init__(parent)
          self.ui = Ui_MyDialog()
          self.ui.setupUi(self)
          self.ui.pushButton_cancel.clicked.connect(self.cancel_dialog)
  
      def cancel_dialog(self):
          print("Closing Dialog Window...")
          sys.exit()
  </code></pre>
  
  <p>When I run this and click the respective menu button I get the following error:</p>
  
  <pre><code>AttributeError: 'MyDialog' object has no attribute 'setupUi'
  </code></pre>
  
  <p>the Error is at this line:</p>
  
  <pre><code>self.ui.setupUi(self)  # this is under MyDialog Class
  </code></pre>
  
  <p>I can get the code working if I reference it to the external (Ui_MyDialog) file directly without using the second class here. But as I stated at the beginning I want to control this from within this file, make the modifications directly here so that I won't have the keep track of the modifications to the Ui files in the future.</p>