2012-08-10 22 views
1
信號/槽的更多信息

當我實現一個按鈕被點擊時執行的功能,代碼是這樣的:與QPushButton

self.connect(btnBrowse, SIGNAL("clicked()"), self.browseFile) 

和我實現該功能browseFile

def browseFile(self): 

但是當我在方法browseFile中時,我沒有關於被點擊的按鈕的信息,因爲我想爲許多按鈕實現一個功能browseFile。我該怎麼做纔能有更多信息的時隙,例如有我的函數如下所示:

def browseFile(self, option): 

感謝

回答

2

連接到lambda(或使用functools.partial)。 還要注意使用新風格的語法,它更具可讀性和pythonic。

+0

謝謝,我要試試這個選項並給予反饋 – nam 2012-08-13 08:39:37

+0

這是我的問題的最佳答案! – nam 2012-08-13 09:12:03

+0

不知道你能做到這一點! – 2012-08-13 20:50:13

1

Sender()提供一個指向發送事件的按鈕,你就可以讀按鈕文本(或其他相關數據)來確定按下哪個按鈕

+1

或'QSignalMapper'可能是一個解決方案,謝謝! – nam 2012-08-10 15:08:21