为了账号安全,请及时绑定邮箱和手机立即绑定

PyQt5 在课堂外添加和删除标签

PyQt5 在课堂外添加和删除标签

慕尼黑5688855 2022-07-12 15:40:44
我有一个 Python 应用程序,它使用 PyQt5 作为它的 GUI。我有一个选项卡小部件,我想在窗口类之外添加和删除选项卡。就像是:Tabs.addTab("name")我怎么做?这是我的代码:import sysfrom PyQt5.QtWidgets import QMainWindow, QApplication, QWidget, QAction, QTabWidget ,QVBoxLayoutfrom PyQt5.QtGui import QIconfrom PyQt5.QtCore import pyqtSlotclass App(QMainWindow):    def __init__(self):        super().__init__()        self.title = 'Test'        self.left = 0        self.top = 0        self.width = 500        self.height = 500        self.setWindowTitle(self.title)        self.setGeometry(self.left, self.top, self.width, self.height)        self.table_widget = MyTableWidget(self)        self.setCentralWidget(self.table_widget)        self.show()class MyTableWidget(QWidget):    def __init__(self, parent):        super(QWidget, self).__init__(parent)        self.layout = QVBoxLayout(self)        self.tabs = QTabWidget()        self.tab1 = QWidget()        self.tab2 = QWidget()        self.tabs.resize(300,200)        self.tabs.addTab(self.tab1, "Tab 1")        self.tabs.addTab(self.tab2, "Tab 2")        self.layout.addWidget(self.tabs)        self.setLayout(self.layout)if __name__ == '__main__':    app = QApplication(sys.argv)    ex = App()    sys.exit(app.exec_())谢谢您的帮助!
查看完整描述

1 回答

?
千万里不及你

TA贡献1784条经验 获得超9个赞

无论您要删除类内还是类外的选项卡都没有关系,但您必须使用 QTabWidget 对象,例如在您的情况下,如果您想从“App”类添加一个选项卡,那么您必须这样做它通过属性为“tabs”的对象“table_widget”,即QTabWidget:


class App(QMainWindow):

    def __init__(self):

        super().__init__()

        # ...

        self.table_widget.tabs.addTab(QWidget(), "name") # <--- add tab

        self.table_widget.tabs.removeTab(0)              # <--- remove tab


查看完整回答
反对 回复 2022-07-12
  • 1 回答
  • 0 关注
  • 369 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号