1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
from PyQt5 import QtWidgets, QtGui, QtCore
import sys
app = QtWidgets.QApplication(sys.argv)
class Depliant(QtWidgets.QWidget):
def __init__(self, parent=None):
self.open = True
QtWidgets.QWidget.__init__(self, parent=parent)
self.layout = QtWidgets.QVBoxLayout(self)
self.button = QtWidgets.QPushButton("+")
self.button.setFixedSize(20, 20)
self.button.clicked.connect(self.switch)
self.layout.addWidget(self.button)
self.content = QtWidgets.QWidget()
self.layout.addWidget(self.content)
self.content_layout = QtWidgets.QGridLayout(self.content)
def addWidget(self, widget, row, column):
self.content_layout.addWidget(widget, row, column)
def switch(self):
if self.open == True:
self.open = False
else:
self.open = True
self.content.setVisible(self.open)
class Main:
def __init__(self):
w = QtWidgets.QMainWindow()
central_widget = QtWidgets.QWidget()
w.setCentralWidget(central_widget)
layout = QtWidgets.QGridLayout(central_widget)
a = Depliant()
layout.addWidget(a, 1, 1)
a.addWidget(QtWidgets.QLabel("test"), 0, 0)
a.addWidget(QtWidgets.QLabel("test"), 1, 0) |
Partager