Advertisement
Guest User

ScrollArea

a guest
Nov 27th, 2020
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.94 KB | None | 0 0
  1. import sys
  2.  
  3. from PyQt5 import QtWidgets, QtCore
  4.  
  5. class ScrollArea(QtWidgets.QScrollArea):
  6.     def __init__(self, parent = None):
  7.         super().__init__(parent)
  8.         self._buttons = []
  9.         widget = QtWidgets.QWidget()
  10.         layout = QtWidgets.QVBoxLayout()
  11.         widget.setLayout(layout)
  12.         self.setWidget(widget)
  13.         self.setWidgetResizable(True)
  14.  
  15.     def addButton(self):
  16.         index = len(self._buttons)
  17.         text = "button {}".format(index)
  18.         button = QtWidgets.QPushButton(text)
  19.         self.widget().layout().addWidget(button)
  20.         self._buttons.append(button)
  21.         button.clicked.connect(self.addButton)
  22.         return button
  23.        
  24. if __name__ == "__main__":
  25.     app = QtWidgets.QApplication(sys.argv)
  26.     widget = ScrollArea()
  27.     QtCore.QTimer.singleShot(0, lambda: widget.addButton())
  28.     QtCore.QTimer.singleShot(0, lambda: widget.addButton())
  29.     widget.show()
  30.     exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement