多个对象之间的PyQT事件
我正在用Python/PyQT创建一个图形界面程序,想知道怎么把子对象发生的事件连接到父对象上。
举个例子,如果有人点击了一个“提交”按钮,我该怎么让父对象做点什么,比如更新父对象上的一个QLabel。
任何帮助都非常感谢。
L
2 个回答
0
每次你设置新的父级时,必须连接这些方法(并且要移除旧的连接!)
http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html#connect
(如果你更改了控件的父级,但仍然希望新的父级接收信号)
不过,如果你的布局是固定的,只需给你的控件起个好名字。然后把每个信号连接到一个可调用的函数(任何Python函数),这个函数会改变QLabel的内容。
在这种情况下,父子关系并没有影响,因为你是通过名字来引用控件,而不是通过它们的关系。