學習PyQt5(三):PyQt5的信號和槽


 

我 

如圖所示,我們創建一個按鈕及一個瀏覽器。

什么是信號?比如按鈕的單擊,雙擊,按下,釋放等,都可以認為是一個信號

什么是槽? 對應的信號,做出什么應對,這要一個應對在一個函數中,我們可以認為這就是一個信號/槽關系

在Qt Designer中點擊工具欄(注意不是工具盒)中的這個圖標

點擊這個圖標后,就進入了編輯信號/槽的狀態,這個時候我們把鼠標放在放在組件上會有紅色選中狀態。

點擊拉向空白處,會出現上圖情況,這種情況是自定義槽,也可指向另一個控件倆着相關聯。

我們點擊編譯會出現槽/信號框,點擊添加按鈕,添加自定義的函數。

同時我們也可以在右下角的信號/槽編譯器處,編譯和修改

保存創建的UI,會在路徑下生成一個.ui的文件,

 

點擊PyUIC運行,會自動生成一個test_ui.py文件,打開此文件會發現

self.pushButton.clicked.connect(MainWindow.test_1)

這行代碼,這就是我們前面編譯的信號/槽在代碼中的體現,所有,我們也可以在代碼中自己編寫

編輯主文件

from PyQt5 import QtWidgets 
from test_ui import Ui_MainWidow 
class MyWindow(QtWidgets.QWidget,Ui_MainWindow): 
   def __init__(self): 
       super(MyWindow,self).__init__() 
       self.setupUi(self) 
if __name__=="__main__": 
    import sys 
    app=QtWidgets.QApplication(sys.argv) 
    myshow=Ui_MainWindow() 
    myshow.show() 
    sys.exit(app.exec_())

這時運行會報錯,因為我們每次寫槽函數也就是test_1。

def test_1(self): 
    self.textBrowser.append("0") 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM