2012-07-13 137 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