Qt5滑鼠事件及例項

2022-03-11 21:06:59 字數 1206 閱讀 6083

mainwindow.h

#ifndef mainwindow_h

#define mainwindow_h

#include #include #include #include class mainwindow : public qmainwindow

;#endif // mainwindow_h

mainwindow.cpp

#include "mainwindow.h"

mainwindow::mainwindow(qwidget *parent)

: qmainwindow(parent)

//mousepressevent()函式為滑鼠按下事件響應函式

void mainwindow::mousepressevent(qmouseevent *e)

else if(e->button() == qt::rightbutton)

else if(e->button() == qt::midbutton)

}//mousemoveevent()函式為滑鼠移動事件響應函式

void mainwindow::mousemoveevent(qmouseevent *e)

//mousereleaseevent()函式為滑鼠鬆開事件響應函式

void mainwindow::mousereleaseevent(qmouseevent *e)

//mousedoubleclickevent()函式為滑鼠雙擊事件響應函式

void mainwindow::mousedoubleclickevent(qmouseevent *e)

mainwindow::~mainwindow()

main.cpp

#include "mainwindow.h"

執行效果

滑鼠移動時,顯示滑鼠的座標

當滑鼠左鍵按下時,顯示左鍵按下

參考資料

《qt5開發及例項》

QT5的滑鼠事件和滾輪事件

使用qt5的滑鼠事件和滾輪事件 完成滑鼠左鍵拖動視窗,雙擊全屏,滾輪放大縮小視窗大小 這裡使用的是qmouseevent類裡面的滑鼠事件,通常進行重定義部件的滑鼠事件處理函式來實現自定義的內容操作。同樣,滑鼠滾輪操作是利用qwheelevent實現滾輪事件。其中 cpp view plain cop...

Qt5 事件過濾器

事件過濾器 qt中乙個獨特的事件處理機制,可以讓乙個物件偵聽攔截 另外乙個物件的事件 1 呼叫installeventfilter 註冊需要管理的物件 2 在eventfilter 裡處理需要管理的物件的事件。例如 用 obja 過濾 objb 的事件,即事件到達 objb 之前,先交由 obja ...

Qt滑鼠事件

1 滑鼠事件有哪些?預設如何觸發?查文件 查文件,注意mousemoveevent預設是滑鼠按下移動觸發,若要滑鼠移動直接觸發,則需要setmousetraching true 2 預設訊息響應是什麼?如何自定義響應?查文件 繼承過載 3 多個接收者,滑鼠事件預設接收者是誰?如何自定義接收者?缺省會...