signal_data.py 743 B

12345678910111213141516171819202122232425262728293031
  1. from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QPushButton, QWidget
  2. def my_custom_fn(n):
  3. print("Button %d was clicked" % n)
  4. class MainWindow(QMainWindow):
  5. def __init__(self, *args, **kwargs):
  6. super(MainWindow, self).__init__(*args, **kwargs)
  7. self.setWindowTitle("My Awesome App")
  8. layout = QVBoxLayout()
  9. for n in range(10):
  10. btn = QPushButton(str(n))
  11. btn.pressed.connect(lambda val=n: my_custom_fn(val))
  12. layout.addWidget(btn)
  13. widget = QWidget()
  14. widget.setLayout(layout)
  15. self.setCentralWidget(widget)
  16. if __name__ == '__main__':
  17. app = QApplication([])
  18. window = MainWindow()
  19. window.show()
  20. app.exec_()