Qt:如何确定QScrollArea中的小部件是否可见?

8

有人建议我重新实现QWheelEvent处理程序,并检查每个子窗口的visibleRegion是否为0。

还有更好的建议吗?


Nyaruko,我也在寻找同样的解决方案,如果你找到了请添加。 - Lalitkumar Tarsariya
1个回答

3
当你添加小部件时,请给它命名。
QWidget* myWidget = new QWidget;
myWidget->setObjectName( "myWidget" );
...
//create scroll area
//add a layout to the scroll area
...
scrollArea->layout()->addWidget( myWidget );

然后,像这样检查可见性:

QWidget* widget = scrollArea->findChild< QWidget* >( "myWidget" );
std::cout << widget->isVisible() << std::endl;

你可以保留你的小部件名称列表,以便在需要时更轻松地循环检查。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接