# -*- coding:utf-8 -*-
from pyqt5.qt import
*a =
0class
window
(qwidget)
:#宣告無引數的訊號
signal1 = pyqtsignal(
)#宣告帶乙個int型別引數的訊號
signal2 = pyqtsignal(
int)
#宣告帶int和str型別引數的訊號
signal3 = pyqtsignal(
int,
str)
#宣告帶乙個列表型別引數的訊號
signal4 = pyqtsignal(
list
)#宣告帶乙個字典型別引數的訊號
signal5 = pyqtsignal(
dict
)#宣告乙個多過載版本的訊號,包括帶int和str型別引數的訊號和帶str型別引數的訊號
signal6 = pyqtsignal(
[int
,str],
[str])
def__init__
(self)
:super()
.__init__(
) self.setwindowtitle(
'pyqt5--自定義訊號與槽'
) self.resize(
500,
500)
self.setup_ui(
)def
setup_ui
(self)
:# 將訊號連線到指定槽函式
self.signal1.connect(self.signalcall1)
self.signal2.connect(self.signalcall2)
self.signal3.connect(self.signalcall3)
self.signal4.connect(self.signalcall4)
self.signal5.connect(self.signalcall5)
self.signal6[
int,
str]
.connect(self.signalcall6)
self.signal6[
str]
.connect(self.signalcall6overload)
# 發射訊號
self.signal1.emit(
) self.signal2.emit(1)
self.signal3.emit(1,
"text"
) self.signal4.emit([1
,2,3
,4])
self.signal5.emit(
) self.signal6[
int,
str]
.emit(1,
"text"
) self.signal6[
str]
.emit(
"text"
)def
signalcall1
(self)
:print
("signal1 emit"
)def
signalcall2
(self,val)
:print
("signal2 emit,value:"
,val)
defsignalcall3
(self,val,text)
:print
("signal3 emit,value:"
,val,text)
defsignalcall4
(self,val)
:print
("signal4 emit,value:"
,val)
defsignalcall5
(self,val)
:print
("signal5 emit,value:"
,val)
defsignalcall6
(self,val,text)
:print
("signal6 emit,value:"
,val,text)
defsignalcall6overload
(self,val)
:print
("signal6 overload emit,value:"
,val)
if __name__ ==
'__main__'
:import sys
window = window(
) window.show())
)
PyQt5 自定義訊號槽函式
1 簡介 自定義訊號槽函式,當訊號傳送的時候,可以呼叫被繫結的槽函式 2 功能實現 coding utf 8 簡介 內建訊號槽示例 from pyqt5.qtcore import qobject,pyqtsignal 訊號物件 class qtypesignal qobject 定義乙個訊號 se...
PyQt5 自定義訊號槽 不同傳參
1 簡介 自定義的訊號 傳遞不同的引數 2 功能實現 coding utf 8 簡介 內建訊號槽訊號槽示例 from pyqt5.qtcore import qobject pyqtsignal class custsignal qobject 宣告乙個無引數的訊號 signal1 pyqtsign...
pyqt5講解11 自定義訊號和槽
步驟 定義訊號 定義槽函式 連線訊號和槽函式 發射訊號 示例 coding utf 8 簡介 內建訊號槽訊號槽示例 from pyqt5.qtcore import qobject pyqtsignal class custsignal qobject 宣告乙個無引數的訊號 signal1 pyqt...