• QStackedWidget实例


    #!/usr/bin/python
    # _*_ Coding: Utf-8 _*_
    
    '''
        QStackedWidget
        useful properties and methods of qtabwidget
        funcs:
            addWidget(QWidget *widget), removeWidget(QWidget *widget) --- add & remove widget
            indexOf(QWidget *widget) --- get index of widget
            insertWidget(int index, QWidget *widget) --- insert widget to index
            count() --- return amount of widgets
            currentIndex() and currentWidget() --- return index and widget of current
        slots:
            setCurrentIndex(int index)
            setCurrentWidget(QWidget *widget)
        signals:
            currentChanged(int index)
            widgetRemoved(int index)
        --- edit by yangrui
    '''
    import sys
    from PyQt5.QtCore import *
    from PyQt5.QtWidgets import (QApplication, QWidget, QStackedWidget, QLabel, QComboBox)
    from PyQt5.QtGui import *
    
    class MystackedWidget(QWidget):
        qss = """
                #label1 {
                    background: #545D4F;
                }
    
                #label2 {
                    background: #FAA45D;
                }
                #label3 {
                    background: #6AF45D;
                }
                #label4 {
                    background: #2AA45D;
                }
            """
        def __init__(self):
            super(MystackedWidget, self).__init__()
            self.initUI()
    
        def initUI(self):
            self.resize(600, 400)
            self.stackedWidget = QStackedWidget(self)
    
            label1 = QLabel("page 1")
            label1.setFixedSize(150, 60)
            label1.setObjectName("label1")
            label2 = QLabel("page 2")
            label2.setFixedSize(150, 60)
            label2.setObjectName("label2")
            label3 = QLabel("page 3")
            label3.setFixedSize(150, 60)
            label3.setObjectName("label3")
            label4 = QLabel("page 4")
            label4.setFixedSize(150, 60)
            label4.setObjectName("label4")
    
            # use combobox to change stacked widget's current index
            self.combobox = QComboBox(self)
            for i in range(4):
                self.combobox.addItem("Page {0}".format(i+1))
            self.combobox.activated.connect(self.stackedWidget.setCurrentIndex)
    
            self.stackedWidget.addWidget(label1)
            self.stackedWidget.addWidget(label2)
            self.stackedWidget.addWidget(label3)
            self.stackedWidget.addWidget(label4)
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        form = MystackedWidget()
        form.show()
        app.exec_()
  • 相关阅读:
    [SHOI2015]自动刷题机
    【教程】AI画放射图
    AI画圆角矩形
    极限运动:街头极限单车,不只是牛逼!
    DPK750针式打印机驱动,750u.dll下载
    文艺青年必看的Ⅹ部心理电影
    C语言程序设计-第2章 算法-程序的灵魂
    C语言程序设计-第1章 程序设计和C语言
    20151127笔记
    20151125小概念
  • 原文地址:https://www.cnblogs.com/exploer/p/13379173.html
Copyright © 2020-2023  润新知