Skip to content

Instantly share code, notes, and snippets.

@altendky
Created October 13, 2016 20:57
Show Gist options
  • Save altendky/176cf84f7390bc9b01bb626b58570f4f to your computer and use it in GitHub Desktop.
Save altendky/176cf84f7390bc9b01bb626b58570f4f to your computer and use it in GitHub Desktop.
import sys
from PyQt5.QtWidgets import *
class MainWindow(QWidget):
def __init__(self):
super(MainWindow, self).__init__()
self.setFixedSize(480, 320)
#self.setStyleSheet("background-color: rgb(255, 255, 255);")
self.buttons()
self.stack1 = QWidget()
self.stack2 = QWidget()
self.stack3 = QWidget()
self.stack1UI()
self.stack2UI()
self.stack3UI()
self.stack = QStackedWidget(self)
self.stack.setGeometry(100, 50, 200, 200)
self.stack.addWidget(self.stack1)
self.stack.addWidget(self.stack2)
self.stack.addWidget(self.stack3)
self.stack.setCurrentIndex(0)
self.show()
def buttons(self):
self.btn1 = QPushButton('page1', self)
self.btn1.setGeometry(20, 20, 50, 25)
self.btn1.clicked.connect(lambda: self.stack.setCurrentWidget(self.stack1))
self.btn2 = QPushButton('page2', self)
self.btn2.setGeometry(20, 45, 50, 25)
self.btn2.clicked.connect(lambda: self.stack.setCurrentWidget(self.stack2))
self.btn3 = QPushButton('page3', self)
self.btn3.setGeometry(20, 70, 50, 25)
self.btn3.clicked.connect(lambda: self.stack.setCurrentWidget(self.stack3))
def stack1UI(self):
layout = QGridLayout(self)
label1 = QLabel('huhu', self)
label1.setGeometry(120, 100, 100, 50)
layout.addWidget(label1)
self.stack1.setLayout(layout)
def stack2UI(self):
layout = QVBoxLayout(self)
label1 = QLabel('huhu222', self)
label1.setGeometry(120, 100, 100, 50)
label2 = QLabel('BLAH', self)
label2.setGeometry(80, 80, 100, 50)
layout.addWidget(label1)
layout.addWidget(label2)
self.stack2.setLayout(layout)
def stack3UI(self):
#layout = QGridLayout(self)
label1 = QLabel('huhu', self.stack3)
label1.setGeometry(120, 100, 100, 50)
#layout.addWidget(label1)
#self.stack3.setLayout(layout)
if __name__ == '__main__':
app = QApplication(sys.argv)
w = MainWindow()
sys.exit(app.exec_())
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment