自学内容网 自学内容网

QT 如何禁止QComboBox鼠标滚轮

一般情况下,QComboBox会相应鼠标的滚轮事件,即当鼠标停靠在QComboBox上方时,滚动鼠标滚轮,QComboBox的选项会发生切换。但这或许并不是我们希望所出现的,尤其是当QComboBox嵌入在QScrollArea中时,用户只是想通过鼠标滚轮来上下滑动QScrollArea,但是在鼠标位置经过QComboBox时,其选项就发生了切换。

解决方案

重载QComboBox的wheelEvent事件,忽略掉其QWheelEvent事件

#include "combobox.h"

ComboBox::ComboBox(QWidget *parent) : QComboBox(parent)
{

}

void ComboBox::wheelEvent(QWheelEvent *e)
{
    //disable the scroll function
    e->ignore();
}


原文地址:https://blog.csdn.net/hellokandy/article/details/145183992

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!