顧名思義:事件就是執行的東西,訊號就和觸發類似吧,是一種動作
qlcdnumber類:類似於qlable是一種顯示標籤,一般好像多用於顯示時間
qslider類:滑動條類
qtcore:包含了核心的非gui的功能。主要和時間、檔案與資料夾、各種資料、流、urls、mime類檔案、程序與執行緒一起使用。
[python]view plain
copy
# -*- coding=utf-8 -*-
from
pyqt5.qtwidgets
import
from
pyqt5.qtcore
import
qt
import
sys
class
example(qwidget):
def__init__(
self
):
super().__init__()
self
.initui()
definitui(
self
):
lcd = qlcdnumber(self
)#數字
sld = qslider(qt.horizontal,self
) #水平拖動條
vbox = qvboxlayout() #建立乙個垂直布局
vbox.addwidget(lcd) #加入布局
vbox.addwidget(sld)
self
.setlayout(vbox)
#固定布局
sld.valuechanged.connect(lcd.display)#將水平拖動條的變化和數字連線起來
self
.setgeometry(
300,
300,
300,
300)
self
.setwindowtitle(u
'宋存最美'
) self
.show()
if__name__ ==
'__main__'
: ex = example()
預覽圖:
2.重構事件處理器
[python]view plain
copy
# -*- coding: utf-8 -*-
import
sys
from
pyqt5.qtcore
import
qt
from
pyqt5.qtwidgets
import
class
example(qwidget):
def__init__(
self
):
super().__init__()
self
.initui()
definitui(
self
):
self
.setgeometry(
300,
300,
250,
150)
self
.setwindowtitle(
'event handler'
) self
.show()
defkeypressevent(
self
, e):
#接受乙個事件e
ife.key() == qt.key_escape:
#如果e的鍵值為esc,則關閉
self
.close()
if__name__ ==
'__main__'
: ex = example()
3.事件傳送
[python]view plain
copy
# -*- coding: utf-8 -*-
import
sys
from
pyqt5.qtwidgets
import
class
example(qmainwindow):
def__init__(
self
):
super().__init__()
self
.initui()
definitui(
self
):
btn1 = qpushbutton('button1'
,self
) #建立self
btn1.move(30
, 50
) btn2 = qpushbutton('button2'
,self
) btn2.move(150
, 50
) btn1.clicked.connect(self
.buttonclicked)
btn2.clicked.connect(self
.buttonclicked)
self
.statusbar()
self
.setgeometry(
300,
300,
300,
300)
self
.setwindowtitle(
'event sender'
) self
.show()
defbuttonclicked(
self
):
sender = self
.sender()
self
.statusbar().showmessage(sender.text() +
'was pressed '
) if
__name__ ==
'__main__'
: ex = example()
PyQt5教程 四 事件與訊號
在這部分教程中我們將 在程式內部發生的事件與訊號。在事件模型中有三個參與者 事件源 事件 物件 事件接收者 事件源是狀態發生變化的物件。它會生成事件。事件 物件 封裝了事件源中狀態的變動。事件接收者是要通知的物件。事件源物件將事件處理的工作交給事件接收者。pyqt5有乙個獨特的signal slot...
學習PyQt5(三) PyQt5的訊號和槽
我 如圖所示,我們建立乙個按鈕及乙個瀏覽器。什麼是訊號?比如按鈕的單擊,雙擊,按下,釋放等,都可以認為是乙個訊號 什麼是槽?對應的訊號,做出什麼應對,這要乙個應對在乙個函式中,我們可以認為這就是乙個訊號 槽關係 在qt designer中點選工具欄 注意不是工具盒 中的這個圖示 點選這個圖示後,就進...
pyqt5 訊號與槽
描述self.obj.destroyed.connect destroy cao 觸發後會執行槽函式,並給槽函式返回釋放物件 self.obj.blocksignals true 臨時打斷訊號 self.obj.objectnamechanged.disconnect 斷開訊號與槽的連線 self....