內置信號與槽函數
from PyQt5.QtWidgets import *
import sys
class Winform(QWidget):
def __init__(self,parent=None):
super().__init__(parent)
self.setWindowTitle('內置的信號/槽示例')
self.resize(330, 50 )
btn = QPushButton('關閉', self)
btn.clicked.connect(self.close)
if __name__ == '__main__':
app = QApplication(sys.argv)
win = Winform()
win.show()
sys.exit(app.exec_())
內置信號和自定義槽函數
from PyQt5.QtWidgets import *
import sys
class Winform(QWidget):
def __init__(self,parent=None):
super().__init__(parent)
self.setWindowTitle('內置的信號和自定義槽函數示例')
self.resize(330, 50 )
btn = QPushButton('關閉', self)
btn.clicked.connect(self.btn_close)
def btn_close(self):
self.close()
if __name__ == '__main__':
app = QApplication(sys.argv)
win = Winform()
win.show()
sys.exit(app.exec_())
自定義信號和內置槽函數
from PyQt5.QtWidgets import *
from PyQt5.QtCore import pyqtSignal
import sys
class Winform(QWidget):
button_clicked_signal = pyqtSignal()
def __init__(self,parent=None):
super().__init__(parent)
self.setWindowTitle('自定義信號和內置槽函數示例')
self.resize(330, 50 )
btn = QPushButton('關閉', self)
btn.clicked.connect(self.btn_clicked)
self.button_clicked_signal.connect(self.close)
def btn_clicked(self):
self.button_clicked_signal.emit()
if __name__ == '__main__':
app = QApplication(sys.argv)
win = Winform()
win.show()
sys.exit(app.exec_())
自定義信號和自定義槽函數
from PyQt5.QtWidgets import *
from PyQt5.QtCore import pyqtSignal
import sys
class Winform(QWidget):
button_clicked_signal = pyqtSignal()
def __init__(self,parent=None):
super().__init__(parent)
self.setWindowTitle('自定義信號和槽函數示例')
self.resize(330, 50 )
btn = QPushButton('關閉', self)
btn.clicked.connect(self.btn_clicked)
self.button_clicked_signal.connect(self.btn_close)
def btn_clicked(self):
self.button_clicked_signal.emit()
def btn_close(self):
self.close()
if __name__ == '__main__':
app = QApplication(sys.argv)
win = Winform()
win.show()
sys.exit(app.exec_())