pyqt中訊號,槽的使用方法

2021-07-10 20:45:40 字數 1416 閱讀 1580

#coding=utf-8

__author__ = 'administrator'

__doc__ = \

'''python版本的qt中訊號槽的使用方法

'''from pyqt4.qtgui import *

from pyqt4.qtcore import *

import sys

class mainwindow(qmainwindow):

def __init__(self, parent = none):

super(mainwindow, self).__init__(parent)

#初始化actions

self._cut = qaction(u'剪下', self)

self._copy = qaction(u'複製', self)

self._paste = qaction(u'貼上', self)

#初始化工具欄

self._******* = q*******()

self.add*******(self._*******)

actions = [self._cut, self._copy, self._paste,]

for a in actions:

#第一種訊號槽的連線方式

#self.connect(a, signal('triggered()'), slot('ontrigger()'))

#第二種

a.triggered.connect(self.ontrigger2)

#第三種訊號槽的連線方式

self.connect(a, signal('triggered()'), self,slot('ontrigger()'))

self._*******.addaction(a)

self.statusbar = qstatusbar()

self.setstatusbar(self.statusbar)

def dotrigger(self):

act = self.sender()

if act == self._cut:

self.statusbar.showmessage(act.text(), 2000)

#第二種方式不需要宣告pyslot,因為用的不是字串

def ontrigger2(self):

self.dotrigger()

#第一種連線方式,必須宣告pyqtslot

@pyqtslot()

def ontrigger(self):

self.dotrigger()

if __name__ == '__main__':

mw = mainwindow()

mw.resize(600, 400)

mw.show()

pyqt 槽任意引數 PyQt5中訊號連線槽的方法

訊號連線槽的方法有4種 在建立 widget 的時候使用訊號作為關鍵字引數,其值為連線的槽函式名 使用訊號的 connect 方法連線到槽 使用 qwidget 的 pyqtconfigure 方法配置 通過函式名稱連線槽 下面這個例子演示了同乙個訊號使用不同的方法連線不同的槽的方法,也演示了如何通...

C 訊號槽使用方法

c 訊號槽使用方法 1.為什麼要使用訊號槽.a.可以將事件源和訂閱處理者分開 b.降低耦合性 事件源只需要向外界暴露最少的資訊,內部改變不影響外部行為 c.降低 複雜性,將事件不同的處理 分散到各個訂閱者內部。2.如何使用資訊槽 a.包含標頭檔案 include sigslot.h using na...

Qt中訊號槽的概念

qt中訊號槽的概念 發表日期 2010 11 24 訊號槽是qt中特有的概念。它使得程式設計師將不同的object繫結起來,而object物件間並不需要對相互了解。slots也是普通的c 方法,它們可以是virtual 可以被過載 可以使private protected public,可以像其它c...