自定義訊號與槽
方法:寫訊號類
寫槽類通過connect將其實例繫結
這樣,啟動訊號的時候,就會將訊號裡的引數傳遞到槽函式,並且啟用槽函式
'''
自定義訊號
pyqtsignal()
用這個函式自定義訊號
'''from pyqt5.qtcore import
*class
mytypesignal
(qobject)
:# 定義乙個訊號
sendmsg = pyqtsignal(
object
)# 傳送3個引數的訊號
sendmsg1 = pyqtsignal(
str,
int,
int)
defrun
(self)
: self.sendmsg.emit(
'hello pyqt5'
)def
run1
(self)
: self.sendmsg1.emit(
"hello",3
,4)class
myslot
(qobject)
:def
get(self,msg)
("資訊:"
+ msg)
defget1
(self,msg,a,b)
(msg)
(a+b)
if __name__ ==
'__main__'
: send = mytypesignal(
)#訊號類
slot = myslot(
)#槽類
send.sendmsg.connect(slot.get)
#訊號例項連線槽的某個方法
send.sendmsg1.connect(slot.get1)
#訊號例項連線槽的某個方法
#連線之後,通過run函式傳送引數給槽函式,並觸發槽函式
send.run(
) send.run1(
)#失去連線
send.sendmsg.disconnect(slot.get)
send.run(
)
PyQt5 自定義訊號槽函式
1 簡介 自定義訊號槽函式,當訊號傳送的時候,可以呼叫被繫結的槽函式 2 功能實現 coding utf 8 簡介 內建訊號槽示例 from pyqt5.qtcore import qobject,pyqtsignal 訊號物件 class qtypesignal qobject 定義乙個訊號 se...
pyqt5 自定義訊號與槽
coding utf 8 from pyqt5.qt import a 0class window qwidget 宣告無引數的訊號 signal1 pyqtsignal 宣告帶乙個int型別引數的訊號 signal2 pyqtsignal int 宣告帶int和str型別引數的訊號 signal3...
總結 PyQt5自定義訊號源
定義乙個訊號源有4個方面要注意 1.定義訊號源 a pyqtsignal str int,str 這裡特別使用訊號源過載的情況加以說明。如上就是訊號源a的過載,乙個可以傳送str引數,另乙個可以傳送 int,str 引數。注意這相當於宣告了兩個同名但引數不同的訊號源。2.鏈結 槽 a int,str...