資源簡(jiǎn)介
我博客對(duì)應(yīng)的程序源碼,用QT5寫(xiě)的程序。
https://blog.csdn.net/humanking7/article/details/80707591

代碼片段和文件信息
#include?“check_keyboard_mouse.h“
#include?
#include?
check_keyboard_mouse::check_keyboard_mouse(QWidget?*parent)
:?QDialog(parent)
{
ui.setupUi(this);
setMouseTracking(true);
//安裝事件過(guò)濾器
ui.edit_m_relative->installEventFilter(this);//控件1
ui.edit_m_absolute->installEventFilter(this);//控件2
ui.edit_keyValue->installEventFilter(this);//控件3
ui.edit_keyValue_Hex->installEventFilter(this);//控件4
ui.edit_keyValue_QtKey->installEventFilter(this);//控件5
}
check_keyboard_mouse::~check_keyboard_mouse()
{
}
//QPointQMouseEvent::globalPos();//窗口坐標(biāo),這個(gè)是返回鼠標(biāo)的全局坐標(biāo)
//QPointQCursor::pos()[static];//返回相對(duì)顯示器的全局坐標(biāo)
//QPointQMouseEvent::pos();//返回相對(duì)這個(gè)widget的位置
//QPointQWidget::pos();//這個(gè)屬性獲得的是當(dāng)前目前控件在父窗口中的位置
//constQPointF&QMouseEvent::screenPos()const;//和QPoint?QMouseEvent::globalPos()?值相同,但是類型更高精度的QPointF
//QPointQWidget::mapToGlobal(constQPoint&?pos)const;//將窗口坐標(biāo)轉(zhuǎn)換成顯示器坐標(biāo)
//QPointQWidget::mapFromGlobal(constQPoint&?pos)const;//將顯示器坐標(biāo)轉(zhuǎn)換成窗口坐標(biāo)
//QPointQWidget::mapToParent(constQPoint&?pos)const;//將窗口坐標(biāo)獲得的pos轉(zhuǎn)換成父類widget的坐標(biāo)
//QPointQWidget::mapFromParent(constQPoint&?pos)const;//將父類窗口坐標(biāo)轉(zhuǎn)換成當(dāng)前窗口坐標(biāo)
//QPointQWidget::mapTo(constQWidget*?parent?constQPoint&?pos)const;//將當(dāng)前窗口坐標(biāo)轉(zhuǎn)換成指定parent坐標(biāo)
////也可使用:
//Qpoint?pt?=?cursor().pos();//獲取當(dāng)前鼠標(biāo)位置
void?check_keyboard_mouse::mouseMoveEvent(QMouseEvent?*event)
{//移動(dòng)
QPoint?p_ab?=?event->globalPos();
QPoint?p_re?=?event->pos();
QString?str;
str?=?QString(“%1??%2“).arg(p_ab.x()).arg(p_ab.y());
ui.edit_m_absolute->setText(str);
str?=?QString(“%1??%2“).arg(p_re.x()).arg(p_re.y());
ui.edit_m_relative->setText(str);
//qDebug()?<“\n-------?Into?mouse?move?cnt:?“?< //qDebug()?<“p_ab:?“?< //qDebug()?<“p_ab_R:?“?< //qDebug()?<“p_re:?“?< //qDebug()?<“p_re_R:?“?<}
void?check_keyboard_mouse::mousePressEvent(QMouseEvent?*event)
{//單擊
//?如果是鼠標(biāo)左鍵按下
if?(event->button()?==?Qt::LeftButton){
//qDebug()?<“l(fā)eft?click“;
setMouseState(?MouseState::L_C?0);
}
//?如果是鼠標(biāo)右鍵按下
else?if?(event->button()?==?Qt::RightButton){
//qDebug()?<“right?click“;
setMouseState(MouseState::R_C?0);
}
else?if?(event->button()?==?Qt::MidButton){
//qDebug()?<“mid?click“;
setMouseState(MouseState::M_C?0);
}
}
void?check_keyboard_mouse::mouseReleaseEvent(QMouseEvent?*event)
{//釋放
setMouseState(MouseState::Release?0);
}
void?check_keyboard_mouse::mouseDoubleClickEvent(QMouseEvent?*event)
{//雙擊
//?如果是鼠標(biāo)左鍵按下
if?(event->button()?==?Qt::LeftButton){
//qDebug()?<“l(fā)eft?double?click“;
setMouseState(MouseState::L_DC?0);
}
else?if?(event->button()?==?Qt::RightButton){
//qDebug()?<“right?double?click“;
setMouseState(MouseState::R_DC?0);
}
}
void?check_keyboard_mouse::wheelEvent(QWheelEvent?*event)
{//滾輪
int?wheel_val?=?event->delta();
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????12710??2018-06-15?20:43??check_keyboard_mouse\check_keyboard_mouse.cpp
?????文件???????1242??2018-06-08?01:09??check_keyboard_mouse\check_keyboard_mouse.h
?????文件?????????80??2018-06-07?09:32??check_keyboard_mouse\check_keyboard_mouse.qrc
?????文件??????10870??2018-06-08?02:05??check_keyboard_mouse\check_keyboard_mouse.ui
?????文件??????10335??2018-06-13?22:40??check_keyboard_mouse\check_keyboard_mouse.vcxproj
?????文件???????2622??2018-06-13?22:40??check_keyboard_mouse\check_keyboard_mouse.vcxproj.filters
?????文件???????1131??2018-06-15?16:39??check_keyboard_mouse\check_keyboard_mouse.vcxproj.user
?????文件????????524??2018-06-13?21:34??check_keyboard_mouse\dlgshow.ui
?????文件???????2896??2018-06-13?22:40??check_keyboard_mouse\GeneratedFiles\Debug\moc_check_keyboard_mouse.cpp
?????文件???????1474??2018-06-13?22:40??check_keyboard_mouse\GeneratedFiles\qrc_check_keyboard_mouse.cpp
?????文件???????2896??2018-06-08?00:33??check_keyboard_mouse\GeneratedFiles\Release\moc_check_keyboard_mouse.cpp
?????文件??????13806??2018-06-13?22:40??check_keyboard_mouse\GeneratedFiles\ui_check_keyboard_mouse.h
?????文件???????1017??2018-06-13?22:37??check_keyboard_mouse\main.cpp
?????文件???????1006??2018-06-07?09:31??check_keyboard_mouse.sln
????..A..H.?????37888??2018-06-15?20:43??check_keyboard_mouse.v12.suo
?????目錄??????????0??2018-06-13?22:40??check_keyboard_mouse\GeneratedFiles\Debug
?????目錄??????????0??2018-06-08?00:33??check_keyboard_mouse\GeneratedFiles\Release
?????目錄??????????0??2018-06-13?22:40??check_keyboard_mouse\GeneratedFiles
?????目錄??????????0??2018-06-07?09:31??check_keyboard_mouse\Resources
?????目錄??????????0??2019-03-17?20:56??check_keyboard_mouse
-----------?---------??----------?-----??----
???????????????100497????????????????????20
評(píng)論
共有 條評(píng)論