0

我有许多布局和小部件的应用程序窗口。我也有带有关闭滚动条的滚动区域。我能够为scrollareaup 和scrollareadown 创建插槽。但是当我为所有应用程序创建 wheelEvent 时,它仅适用于项目 int 应用程序而不是滚动区域。当我尝试这个时:

void TContic_win::wheelEvent(QWheelEvent *event) {
  cout << "-" << endl;
} 

我不知道我该如何解决。我的想法是这样的:

bool TContic_win::eventFilter(QObject *obj, QEvent *e) {

  if (isChildOfScrollWidget(obj) { if (e == wheel) scroll Up or Down }

}
4

2 回答 2

0

对不起。这是我的错。我有一个错误的事件过滤器。我在恶劣的条件下使用了“返回真”,因此由于这个错误,我总是忽略其他事件,并且我的事件过滤器不适用于子项目。顺便说一句,感谢您的努力。

于 2012-10-17T05:28:57.473 回答
0

你可以做这样的事情(如果你的小部件有Your_Scrol_Widget父级):

void TContic_win::wheelEvent(QWheelEvent *we)
{
    if (this->childAt( we->pos() )->parent() == Your_Scrol_Widget)
        qDebug() << "-" ;
}

你一定有个主意。

于 2012-10-16T23:06:23.790 回答