zoukankan      html  css  js  c++  java
  • 信号-事件汇总

     事件:

     显示和关闭事件:

    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)     自定义上下文菜单请求信号

  • 相关阅读:
    Ubuntu系统---安装思维导图XMind
    Git---Ubuntu下的安装与使用
    YOLO---YOLOv3 with OpenCV安装与使用
    Keras---Virtualenv 下安装Keras (基于Tensorflow后端)
    Python---virtualenv + Tensorflow + 安装jupyter notebook
    Ubuntu系统---以virtualenv方式安装Tensorflow-CPU
    Caffe---Pycaffe 绘制loss和accuracy曲线
    Caffe---自带工具 绘制loss和accuracy曲线
    day91 DjangoRestFramework学习三之认证组件、权限组件、频率组件、url注册器、响应器、分页组件
    day 90 DjangoRestFramework学习二之序列化组件
  • 原文地址:https://www.cnblogs.com/liming19680104/p/10357131.html
Copyright © 2011-2022 走看看