PyQt5--connect與cao的嘗試


根據教程我自己的理解就是,在PyQt5中,只要是它對象下面的方法就可以使用connect連接自己創建的cao方法實現相關功能。

from PyQt5.Qt import *

class Window(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("創建一個封裝類")
        self.resize(500, 500)
        self.set_ui()


    def set_ui(self):
        self.QObj_xinhao()#QObiect信號的操作


    def QObj_xinhao(self):
        self.obj=QObject()

        # obj.destroyed  釋放對象
        # obj.objectNameChanged 對象名稱發生了改變

        # def destroy_cao():
        #      print("這個對象被釋放了")
        # self.obj.destroyed.connect(destroy_cao)
        # del self.obj

        def obj_name_cao():
            print("對象名稱發生了改變")
        self.obj.objectNameChanged.connect(obj_name_cao)

        self.obj.setObjectName("xm")#改變對象名稱

if __name__ == '__main__':
    import sys
    app=QApplication(sys.argv)
    window=Window()

    window.show()

    sys.exit(app.exec_())

Window()方法繼承QWidget。在set_ui中就可以用self.  調用QWidget的各個對象。調用了QObject。

self.obj.objectNameChanged.connect(obj_name_cao)在obj這個對象中使用objectNameChanged方法,連接obj_name_cao方法返回相關打印信息。

 


免責聲明!

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



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