加载中...

PyQt5学习之按钮单击事件信号与槽关联

PyQt5学习之按钮单击事件信号与槽关联

用到的方法代码中都有标注,直接上代码

代码:

import sndhdr
import sys
from PyQt5.QtWidgets import QHBoxLayout,QApplication,QMainWindow,QWidget,QPushButton

class QuitApplication(QMainWindow):
    def __init__(self):
        super(QuitApplication, self).__init__()
        self.resize(800,500)
        self.setWindowTitle('如何退出应用程序')

        #添加Button
        self.button1=QPushButton('退出')
        #信号与槽关联
        self.button1.clicked.connect(lambda:self.onClick_Button())

        #创建水平布局对象
        layout=QHBoxLayout()
        #将组件加入水平布局
        layout.addWidget(self.button1)
        #主框架
        mainFrame=QWidget()
        #水平布局中的内容加入主框架
        mainFrame.setLayout(layout)
        #主框架加入窗口
        self.setCentralWidget(mainFrame)

    #按钮单击事件的方法(自定义的槽)
    def onClick_Button(self):
        #通过sender获取对象button1
        sender=self.sender()
        #sender.text()是button1的文本
        print(sender.text()+'按钮被按下')
        #实例对象
        app=QApplication.instance()
        #退出
        app.quit()

if __name__=='__main__':
    app=QApplication(sys.argv)
    main=QuitApplication()
    main.show()
    sys.exit(app.exec_())

运行结果

image

posted @ 2022-02-02 15:33  我没有bug  阅读(237)  评论(0编辑  收藏  举报