zoukankan      html  css  js  c++  java
  • QEvent整理归纳:140种类型,29个继承类,7个函数,3种事件来源(事件来源分为三种:系统产生的,QT产生的,程序员产生的)

    140种事件类型:

    QEvent::None
    QEvent::AccessibilityDescription
    QEvent::AccessibilityHelp
    QEvent::AccessibilityPrepare
    QEvent::ActionAdded
    QEvent::ActionChanged
    QEvent::ActionRemoved
    QEvent::ActivationChange
    QEvent::ApplicationActivate
    QEvent::ApplicationActivated
    QEvent::ApplicationDeactivate
    QEvent::ApplicationFontChange
    QEvent::ApplicationLayoutDirectionChange
    QEvent::ApplicationPaletteChange
    QEvent::ApplicationWindowIconChange
    QEvent::ChildAdded
    QEvent::ChildInserted
    QEvent::ChildPolished
    QEvent::ChildRemoved
    QEvent::Clipboard
    QEvent::Close
    QEvent::CloseSoftwareInputPanel
    QEvent::ContentsRectChange
    QEvent::ContextMenu
    QEvent::CursorChange
    QEvent::DeferredDelete
    QEvent::DragEnter
    QEvent::DragLeave
    QEvent::DragMove
    QEvent::Drop
    QEvent::EnabledChange
    QEvent::Enter
    QEvent::EnterEditFocus
    QEvent::EnterWhatsThisMode
    QEvent::FileOpen
    QEvent::FocusIn
    QEvent::FocusOut
    QEvent::FontChange
    QEvent::GrabKeyboard
    QEvent::GrabMouse
    QEvent::GraphicsSceneContextMenu
    QEvent::GraphicsSceneDragEnter
    QEvent::GraphicsSceneDragLeave
    QEvent::GraphicsSceneDragMove
    QEvent::GraphicsSceneDrop
    QEvent::GraphicsSceneHelp
    QEvent::GraphicsSceneHoverEnter
    QEvent::GraphicsSceneHoverLeave
    QEvent::GraphicsSceneHoverMove
    QEvent::GraphicsSceneMouseDouble
    QEvent::GraphicsSceneMouseMove
    QEvent::GraphicsSceneMousePress
    QEvent::GraphicsSceneMouseRelease
    QEvent::GraphicsSceneMove
    QEvent::GraphicsSceneResize
    QEvent::GraphicsSceneWheel
    QEvent::Hide
    QEvent::HideToParent
    QEvent::HoverEnter
    QEvent::HoverLeave
    QEvent::HoverMove
    QEvent::IconDrag
    QEvent::IconTextChange
    QEvent::InputMethod
    QEvent::KeyPress
    QEvent::KeyRelease
    QEvent::LanguageChange
    QEvent::LayoutDirectionChange
    QEvent::LayoutRequest
    QEvent::Leave
    QEvent::LeaveEditFocus
    QEvent::LeaveWhatsThisMode
    QEvent::LocaleChange
    QEvent::NonClientAreaMouseButtonDblClick
    QEvent::NonClientAreaMouseButtonPress
    QEvent::NonClientAreaMouseButtonRelease
    QEvent::NonClientAreaMouseMove
    QEvent::MacSizeChange
    QEvent::MenubarUpdated
    QEvent::MetaCall
    QEvent::ModifiedChange
    QEvent::MouseButtonDblClick
    QEvent::MouseButtonPress
    QEvent::MouseButtonRelease
    QEvent::MouseMove
    QEvent::MouseTrackingChange
    QEvent::Move
    QEvent::Paint
    QEvent::PaletteChange
    QEvent::ParentAboutToChange
    QEvent::ParentChange
    QEvent::PlatformPanel
    QEvent::Polish
    QEvent::PolishRequest
    QEvent::QueryWhatsThis
    QEvent::RequestSoftwareInputPanel
    QEvent::Resize
    QEvent::Shortcut
    QEvent::ShortcutOverride
    QEvent::Show
    QEvent::ShowToParent
    QEvent::SockAct
    QEvent::StateMachineSignal
    QEvent::StateMachineWrapped
    QEvent::StatusTip
    QEvent::StyleChange
    QEvent::TabletMove
    QEvent::TabletPress
    QEvent::TabletRelease
    QEvent::OkRequest
    QEvent::TabletEnterProximity
    QEvent::TabletLeaveProximity
    QEvent::Timer
    QEvent::ToolBarChange
    QEvent::ToolTip
    QEvent::ToolTipChange
    QEvent::UngrabKeyboard
    QEvent::UngrabMouse
    QEvent::UpdateLater
    QEvent::UpdateRequest
    QEvent::WhatsThis
    QEvent::WhatsThisClicked
    QEvent::Wheel
    QEvent::WinEventAct
    QEvent::WindowActivate
    QEvent::WindowBlocked
    QEvent::WindowDeactivate
    QEvent::WindowIconChange
    QEvent::WindowStateChange
    QEvent::WindowTitleChange
    QEvent::WindowUnblocked
    QEvent::ZOrderChange
    QEvent::KeyboardLayoutChange
    QEvent::DynamicPropertyChange
    QEvent::TouchBegin
    QEvent::TouchUpdate
    QEvent::TouchEnd
    QEvent::WinIdChange
    QEvent::Gesture
    QEvent::GestureOverride

    这么多类型,其实是分布在不同的继承类里使用。。。

    --------------------------------------------------------

    29个事件继承类:

    QAccessibleEvent
    QActionEvent
    QChildEvent
    QCloseEvent
    QCustomEvent
    QDragLeaveEvent
    QDropEvent
    QDynamicPropertyChangeEvent
    QFileOpenEvent
    QFocusEvent
    QGestureEvent
    QGraphicsSceneEvent
    QHelpEvent
    QHideEvent
    QHoverEvent
    QIconDragEvent
    QInputEvent
    QInputMethodEvent
    QMoveEvent
    QPaintEvent
    QResizeEvent
    QShortcutEvent
    QShowEvent
    QStateMachine::SignalEvent
    QStateMachine::WrappedEvent
    QStatusTipEvent
    QTimerEvent
    QWhatsThisClickedEvent
    QWindowStateChangeEvent

    --------------------------------------------------------

    7个事件自带函数:

    void accept()
    void ignore()
    bool isAccepted() const
    void setAccepted(bool accepted)
    bool spontaneous() const
    Type type() const
    int registerEventType(int hint = -1)

    --------------------------------------------------------

    几个关键的事件处理函数(其实就是分布在QObject,QWidget,QCoreApplication类里):

    QObject::event()
    QObject::installEventFilter()
    QWidget::event()
    QCoreApplication::sendEvent()
    QCoreApplication::postEvent()
    QCoreApplication::processEvents()

    --------------------------------------------------------

    事件(来源)分为三种:系统产生的,QT产生的,程序员产生的

    参考:http://blog.csdn.net/jianchi88/article/details/7017022

    --------------------------------------------------------

    有空增加1、2个关键的例子来讲解一下事件的用法和诀窍

  • 相关阅读:
    家庭小账本——主函数以及其他方法的完善
    《梦断代码》读后感
    《梦断代码》读后感
    基本程序单元Activity
    数据库Dao层编增删改查写,数据库事务,数据库升级
    LeetCode Medium: 8. String to Integer (atoi)
    LeetCode Medium: 6. ZigZag Conversion
    LeetCode Medium:5. Longest Palindromic Substring
    LeetCode Easy: 100. Same Tree
    LeetCode Easy: 88. Merge Sorted Array
  • 原文地址:https://www.cnblogs.com/findumars/p/4700343.html
Copyright © 2011-2022 走看看