PyQt5信号和槽 --Override(覆盖)槽函数
import sys
from functools import partial
from PyQt5.QtCore import QObject, pyqtSignal, Qt
from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QHBoxLayout, QPushButton, QMessageBox, QApplication, QVBoxLayout, QWidget, \
QLabel, QMainWindow
'''
PyQt5信号和槽 --Override(覆盖)槽函数
'''
class OverrideSlotDemo(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("PyQt5信号和槽 -Override(覆盖)槽函数")
button1 = QPushButton("Esc 关闭窗口覆盖keyPressEvent槽()")
button2 = QPushButton("按下Alt更改标题")
layout = QHBoxLayout()
layout.addWidget(button1)
layout.addWidget(button2)
self.setLayout(layout)
def keyPressEvent(self, e):
if e.key() == Qt.Key_Escape:
self.close()
if e.key() == Qt.Key_Alt:
self.setWindowTitle("按下了ALT键")
if __name__ == '__main__':
app = QApplication(sys.argv)
win = OverrideSlotDemo()
win.setGeometry(400,200,500,200)
win.show()
sys.exit(app.exec_())