我想一个接一个地更改两个小部件的可见性。就我而言,我需要做一些处理,然后睡眠1秒钟并更改WidgetA的可见性。并在WidgetB中休眠1秒。这是我的代码。
...// do process D
Sleep(1000);
WidgetA->setVisible(true);
Sleep(1000);
WidgetB->setVisible(true);
但是结果不是我想要的。在进程D完成2秒钟后,WidgetA和WidgetB的可见性已同时更改。
WidgetA->setVisible(true);
后,它们是否实时更改?小部件何时更新? 最佳答案
void MainWindow::Initialize()
{
Sleep(1000);
WidgetA->installEventFilter( this );
WidgetA->setVisible( true );
}
bool MainWindow::eventFilter( QObject *object, QEvent *event )
{
if( object == WidgetA )
{
if( event->type() == QEvent::Show )
{
Sleep(1000);
WidgetB->setVisible( true );
}
}
return QMainWindow::eventFilter( object, event );
}
关于c++ - Qt中的窗口小部件可见性更改后,窗口小部件何时更新?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46210874/