How do you add two viewers in QStackedWidget?



  • Let's say I have one. QLineEdit and QLabel

    How can I put them in? QStackedWidget You're both going downtown?

    from PyQt5.Qt import *
    import sys
    

    class Window(QWidget):
    def init(self, parent = None):
    Qwidget.init(self,parent)

        self.edit = QTextEdit()
        self.label = QLabel()
        self.stacked_widget = QStackedWidget()
    

    if name == "main":
    app = QApplication(sys.argv)
    window = Window()
    window.show()
    sys.exit(app.exec_())



  • Try that.

    import sys
    from PyQt5.Qt import *
    

    class Window(QWidget):
    def init(self):
    super().init()

        self.edit = QTextEdit()
        self.label = QLabel('<h2>Hello World</h2>', alignment=Qt.AlignCenter)
        
        self.stack = QWidget()
        layout = QVBoxLayout(self.stack)
        layout.addWidget(self.label)
        layout.addWidget(self.edit)
        
        self.stacked_widget = QStackedWidget(self)
        self.stacked_widget.addWidget(self.stack)
    
        hbox = QHBoxLayout(self)
        hbox.addWidget(self.stacked_widget)
    

    if name == "main":
    app = QApplication(sys.argv)
    window = Window()
    window.show()
    sys.exit(app.exec_())

    введите сюда описание изображения


    Update

    I must have misread your question.

    import sys
    from PyQt5.Qt import *

    class Window(QWidget):
    def init(self):
    super().init()

        self.stack1 = QTextEdit('TextEdit')
        self.stack2 = QLabel('<h2>Hello World</h2>', alignment=Qt.AlignCenter)
    
        self.stacked_widget = QStackedWidget(self)
        self.stacked_widget.addWidget(self.stack1)
        self.stacked_widget.addWidget(self.stack2)
    
        self.lestWidget = QListWidget()
        self.lestWidget.setFixedWidth(100)
        self.lestWidget.addItems(['TextEdit', 'Label'])
        self.lestWidget.currentRowChanged.connect(self.display)
        
        hbox = QHBoxLayout(self)
        hbox.addWidget(self.lestWidget)
        hbox.addWidget(self.stacked_widget)
    
    def display(self, i):
        self.stacked_widget.setCurrentIndex(i)
    

    if name == "main":
    app = QApplication(sys.argv)
    window = Window()
    window.show()
    sys.exit(app.exec_())

    введите сюда описание изображения

    введите сюда описание изображения



Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2