2012-07-13 107 views
0

我遇到了一些PyQt中连接信号和插槽的新方法。请看看这个链接。 How to capture output of Python's interpreter and show in a Text widget?。这里textWritten(signal)= self.normalOutputWritten(function)直接连接。这是工作。有人能详细说明这种新的连接方式吗?信号和插槽PyQt

改写问题: How to capture output of Python's interpreter and show in a Text widget?。 在上面的链接中,testWritten定义为pyqtSignal,self.normalOutput是插槽函数。通常,我们使用旧样式或新样式进行连接,但在这里他们只使用'='符号。这是工作。请解释这种新的方式。

回答

2

当你创建一些PyQt的对象,就可以设置属性和连接信号uising关键字参数__init__(),如:

button = QtGui.QPushButton(clicked=on_click, text='My button', checkable=True) 

欲了解更多信息,请参阅:

PyQt Support for Qt Properties

Frequently overlooked (and practical) PyQt4 features

+0

我熟悉连接插槽和信号的新旧样式。他们都使用'连接'。这里,使用'='将testWritten信号连接到self.normalOutput函数。请检查我更新的问题。谢谢。 – kasa 2012-07-14 07:06:11

+0

@kasa,你在说什么''sys.stdout = EmittingStream(textWritten = self.normalOutputWritten)''''和''QPushButtton(clicked = self.on_click)''''''''''''''''即'''''即''关键字参数'是一样的。你读过答案的链接吗? – reclosedev 2012-07-14 07:29:56

+0

对不起。现在我明白了。大开眼界真的。非常感谢 – kasa 2012-07-14 07:50:49