日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

QT5知识:装饰器@pyqtSlot和槽和信号

發布時間:2025/3/21 c/c++ 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 QT5知识:装饰器@pyqtSlot和槽和信号 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、定義槽的格式

1

2

3

@PyQt5.QtCore.pyqtSlot(參數)

def on_發送者對象名稱_發射信號名稱(self,參數):

?pass

2、注意點,使用裝飾器必須定義兩個東西

QMetaObject.connectSlotsByName(self)

給需要綁定事件的定義一個id(self.btn.setObjectName('名稱'))

3、按鈕的普通事件

如果普通事件,則程序如下:

class Window(QWidget):def __init__(self, *args, **kwargs):super().__init__(*args, **kwargs)self.setWindowTitle('裝飾器信號與槽')self.resize(500, 500)self.move(400, 200)self.btn = QPushButton('按鈕', self)self.init_ui()def init_ui(self):self.btn.clicked.connect(self.btn_hand)@staticmethoddef btn_hand():print('使用connect點擊了按鈕')

4、使用裝飾器后的事件

from PyQt5.QtWidgets import QMainWindow, QPushButton, QWidget, QMessageBox, QApplication, QHBoxLayout from PyQt5.QtCore import QMetaObject,pyqtSlot import sysclass Window(QWidget):def __init__(self, *args, **kwargs):super().__init__(*args, **kwargs)self.setWindowTitle('裝飾器信號與槽')self.resize(500, 500)self.move(400, 200)self.btn = QPushButton('按鈕', self)self.init_ui()# 要在加載組件后使用QMetaObject.connectSlotsByName(self)def init_ui(self):# 這個地方定義的名字直接在下面使用self.btn.setObjectName('btn')@pyqtSlot()def on_btn_clicked(self):print('使用裝飾器點擊了按鈕') if __name__ == "__main__":app = QApplication(sys.argv)form = Window()form.show()sys.exit(app.exec_())

python GUI庫圖形界面開發之PyQt5信號與槽基礎使用方法與實例_python_腳本之家 (jb51.net)

總結

以上是生活随笔為你收集整理的QT5知识:装饰器@pyqtSlot和槽和信号的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。