我一直在努力学习 PyQt5(和面向对象的编程)。在我当前的脚本中,我需要创建一个选项卡式界面,但似乎无法管理它。我怀疑这个问题与 OOP 有关(我是新手)。“自我”似乎是问题所在,我知道这意味着什么,但还不足以解决它。下面是我最近的尝试。似乎我在使用脚本其他地方的“错误的自我”。我非常想了解面向对象编程 - 在此先感谢任何好心的人提供帮助!
一些代码/错误是:
代码:
tabbar = QTabBar()
tab1 = QTabWidget()
tabbar.addTab(tab1, 'tab1')
错误:
TypeError: arguments did not match any overloaded call:
addTab(self, str): argument 1 has unexpected type 'QTabWidget'
addTab(self, QIcon, str): argument 1 has unexpected type 'QTabWidget'
这是代码:
class App(QMainWindow):
def launch(self, filepath):
subprocess.run(filepath)
def newLauncher(self, matrix):
pass # cut for brevity
def __init__(self):
super(App, self).__init__()
tabbar = QTabBar()
tab1 = QTabWidget()
index = tabbar.addTab(tab1, 'tab1')
self.initUI()
def initUI(self):
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = App()
sys.exit(app.exec_())