当光标在拆分器下时,我需要处理QSplitter的双击。

我重新定义了mouseDoubleClickEvent。但这不适用于这种情况。

当光标在拆分器下(准备移动拆分器)时,我无法确定地单击时,该方法未调用。

最佳答案

您可以使用事件过滤器来过滤所有进入Qsplitter句柄的事件:

bool MyClass::eventFilter(QObject * obj, QEvent * event)
{

    if(event->type()==QEvent::MouseButtonDblClick)
    {
        ...
    }

    return false;
}


同样不要忘记在类的构造函数中安装事件过滤器:

MyClass::MyClass(QWidget *parent):QWidget(parent)
{
     ...

     ui->splitter->handle(1)->installEventFilter(this);

     ...
}

10-04 14:41