我有一个QSizeGrip,它有一个QWidget父级,而这个父级也有另一个QWidget父级,但是我只想将这个sizeGrip用于它的父级,而不是它的父级。我不想让这个sizeGrip在顶层窗口工作。
有办法这样做吗?怎么能做到这一点?
发布于 2013-11-07 10:19:44
安装QSizeGrip的事件筛选器
p->size_grip = new QSizeGrip(0);
p->size_grip->installEventFilter(this);然后在eventFilter
bool MyClass::eventFilter(QObject *o, QEvent *e)
{
if(o == p->size_grip)
{
switch(static_cast<int>(e->type()))
{
case QEvent::MouseButtonPress:
if(static_cast<QMouseEvent*>(e)->button() == Qt::LeftButton)
{
}
break;
case QEvent::MouseMove:
//resizing...
return true;
break;
case QEvent::MouseButtonRelease:
if(static_cast<QMouseEvent*>(e)->button() == Qt::LeftButton)
{
}
break;
}
}
return QWidget::eventFilter(o,e);
}https://stackoverflow.com/questions/19538444
复制相似问题