当前位置: 首页> 文旅> 美景 > 世界500强企业排名中国企业_哈尔滨快速建站案例_全球最大的磁力搜索引擎_制作网站的软件叫什么

世界500强企业排名中国企业_哈尔滨快速建站案例_全球最大的磁力搜索引擎_制作网站的软件叫什么

时间:2025/7/9 23:51:06来源:https://blog.csdn.net/yyqzjw/article/details/144355929 浏览次数:1次
世界500强企业排名中国企业_哈尔滨快速建站案例_全球最大的磁力搜索引擎_制作网站的软件叫什么

1.enterEvent/leaveEvent

当鼠标进入enterEvent重写的那个控件,就会触发enterEvent,如果鼠标离开该控件,就会触发leaveEvent
新建一个c++的类使用多态重写enterEvent函数来实现自己想要的功能
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

void Label::enterEvent(QEvent *event)
{  (void)event;qDebug()<<"enterEvent";
}void Label::leaveEvent(QEvent *event)
{(void)event;qDebug()<<"leaveEvent";}

需要注意的是需要对那个ui界面上的label进行提升

2.mousePressEvent/mouseReleaseEvent(鼠标按下/鼠标释放)

在这里插入图片描述

void Label::mousePressEvent(QMouseEvent *event)
{qDebug()<<event->x()<<","<<event->y();//鼠标按下,显示鼠标的坐标
}

也可以显示鼠标在电脑屏幕上的坐标

void Label::mousePressEvent(QMouseEvent *event)
{//qDebug()<<event->x()<<","<<event->y();//鼠标按下,显示鼠标的坐标qDebug()<<event->globalX()<<","<<event->globalY();//鼠标按下,显示鼠标在电脑屏幕上的坐标
}

根据鼠标不同键按下,debug不同的信息

void Label::mousePressEvent(QMouseEvent *event)
{//qDebug()<<event->x()<<","<<event->y();//鼠标按下,显示鼠标的坐标// qDebug()<<event->globalX()<<","<<event->globalY();//鼠标按下,显示鼠标在电脑屏幕上的坐标if(event->button()==Qt::LeftButton){qDebug()<<"左键被按下";}if(event->button()==Qt::RightButton){qDebug()<<"右键被按下";}}

鼠标释放时触发槽函数

void Label::mouseReleaseEvent(QMouseEvent *event)
{if(event->button()==Qt::LeftButton){qDebug()<<"左键释放";}else if(event->button()==Qt::RightButton){qDebug()<<"右键释放";}
}

3.mouseDoubleClickEvent

如果鼠标被双击,则触发该槽函数

void Label::mouseDoubleClickEvent(QMouseEvent *event)
{if(event->button()==Qt::LeftButton){qDebug()<<"左键被按下";}if(event->button()==Qt::RightButton){qDebug()<<"右键被双击";}
}

4.mouseMoveEvent

如果鼠标移动了触发该槽函数

void Label::mouseMoveEvent(QMouseEvent *event)
{qDebug()<<event->x()<<","<<event->y();
}

还必须要实时打印鼠标坐标的话,还必须加上下面的

Label::Label(QWidget *parent):QLabel(parent)
{(void)parent;this->setMouseTracking(true);//设置鼠标追踪
}

5.wheelEvent

滚轮事件
当滚轮滚动时,打印出滚轮位置的改变值

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);data=0;//全局变量用来记录滚轮的当前值
}Widget::~Widget()
{delete ui;
}void Widget::wheelEvent(QWheelEvent *event)
{data+=event->delta();//加上变化值qDebug()<<data;//打印结果
}

6.keyPressEvent

当键盘有键按下,触发该槽函数

void Widget::keyPressEvent(QKeyEvent *event)
{if(event->key()==Qt::key_A)//A键如果被按下{qDebug()<<"A被按下";}
}

如果是组合键的话

void Widget::keyPressEvent(QKeyEvent *event)
{if(event->key()==Qt::Key_A&&event->modifiers()==Qt::ControlModifier){qDebug()<<"ctrl+a键被按下";}
}
关键字:世界500强企业排名中国企业_哈尔滨快速建站案例_全球最大的磁力搜索引擎_制作网站的软件叫什么

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: