我试图做一个简单的例子来帮助理解QSignalMapping的概念在PySide中如何工作。我想通过循环遍历来动态创建一系列按钮,并且当用户按下其中一个按钮时,我可以激活一种方法,该方法返回所按下按钮的相应标签。
from PySide2 import QtWidgets,QtCore,QtGui
fruit_list = ["apples","oranges","pears"]
def fruit_button_event():
print "this is the pressed button's label"
def main():
for fruit in fruit_list:
fruit_button = QtWidgets.QPushButton(fruit)
fruit_button.clicked.connect(lambda:fruit_button_event())
main()
在下一部分中,将显示一个示例如何使用QSignalMapper: