问题
QWidget控件捕获鼠标点击的简单方法:在QWidget控件所在的类中执行以下代码即可,目的是将该控件增加到事件过滤器的监控中。
widget_TestA->installEventFilter(this);
然后,再通过类中的重载函数eventFilter判断当前鼠标点击的对象以及鼠标点击的行为即可,如下所示:
bool BEAMWidgetZoom::eventFilter(QObject *watched, QEvent *event)
{
if (watched == BeamWidgetZoom_ui->widget_Some && event->type() == QEvent::MouseButtonPress) {
qDebug() << "widget_Some clicked via MouseButtonPress!";