• 信号-事件汇总


     事件:

     显示和关闭事件:

    showEvent(QShowEvent)    控件显示时调用

    closeEvent(QCloseEvent)     控件关闭时调用

    from PyQt5.QtWidgets import QApplication, QWidget,QLabel,QPushButton
    import sys
    from PyQt5.QtGui import QCursor
    from PyQt5.QtCore import Qt
    from PyQt5.QtGui import QPainter, QPixmap
    
    class win(QWidget): #创建一个类,为了集成控件
        def __init__(self):
            super().__init__()
            self.resize(600,600)
            self.setWindowTitle('事件学习')
            self.num=0
            self.label=QLabel('标签',self)
    
        def showEvent(self,QShowEvent):  #控件显示时调用
            #参数1 控件
            print('窗口显示出来了')
    
        def closeEvent(self,QCloseEvent):   # 控件关闭时调用
            # 参数1 控件
            print('窗口关闭了')
    
    if __name__=='__main__':
        app=QApplication(sys.argv)  #创建应用
        w=win()
        w.show()
        sys.exit(app.exec_())

    def closeEvent(self, QCloseEvent):  # 窗口关闭函数

      QCloseEvent.accept() #接受关闭
      QCloseEvent.ignore() #忽略关闭

    移动事件:

        def moveEvent(self,QMoveEvent):   #控件移动时调用
            # 参数1 控件
            print('窗口移动了')

    调整大小事件:

        def resizeEvent(self,QResizeEvent):
            # 参数1 控件
            print('大小发生改变了')

    焦点事件:

    focusInEvent(QFocusEvent)     获取焦点时调用

    focusOutEvent(QFocusEvent)    失去焦点时调用

    拖拽事件:

    dragEnterEvent(QDragEnterEvent)        拖拽进入控件时调用

    dragLeaveEvent(QDragLeaveEvent)     拖拽离开控件时调用

    dragMoveEvent(QDragMoveEvent)      拖拽在控件内移动时调用

    dropEvent(QDropEvent)      拖拽放下时调用

    绘制事件:

    paintEvent(QPaintEvent)      显示控件, 更新控件时调用

    改变事件:

    changeEvent(QEvent)     窗体改变, 字体改变时调用

    右键菜单:

    contextMenuEvent(QContextMenuEvent)      访问右键菜单时调用

    输入法:

    inputMethodEvent(QInputMethodEvent)      输入法调用

     事件转发机制:

     子类受到事件后,先找自己的事件处理函数,如果自己没有就去找父类

    视频教程:https://v.qq.com/x/page/b0859g16bpc.html

     textChanged 文本内容发生改变时发出信号 例如:self.user_line.textChanged.connect(self.check_input_func)

     clicked   鼠标单击时

    self.button.released.connect(self.change_text)      鼠标键释放时

     self.checkbox1.stateChanged.connect(lambda: self.on_state_change_func(self.checkbox1))

    #复选框状态发生改变的时候发出信号

    #匿名函数做槽函数,匿名函数的表达式调用了自定义函数

    window.windowTitleChanged.connect()        窗口标题变化时发出信号

    会向槽函数传递一个字符串,就是新改变的窗口标题

     windowIconChanged(QIcon)     窗口图标改变信号

    customContextMenuRequested(QPoint)     自定义上下文菜单请求信号

  • 相关阅读:
    vim 学习笔记系列(前言)
    12306网站推出图片验证 反破解
    如何提升电脑的速度(五年时间收集各家精华,绝对史上最全)
    电脑维修和维护 毕业总结及经验报告
    留学生 电脑安全与维护手册 (留学须知)
    Progress数据库配置与应用
    润乾报表与DERBY数据库的创建连接详解
    图形报表部署在Linux下出现乱码解决办法
    sqlserver为数据库表增加自增字段
    五种常用web服务器jvm参数设置
  • 原文地址:https://www.cnblogs.com/liming19680104/p/10357131.html
Copyright © 2020-2023  润新知