0
をスムーズありませんフルサイズのウィジェットは再びダブルクリイクされ、すべてのウィジェットを表示するように復元されるので、コードは次のようになります。Qtの表示/非表示ウィジェットは、私は次の問題が発生した
display_widgets_
ストアすべてがQGLWidget
です。
bool MainWindow::eventFilter(QObject *watched, QEvent *event)
{
if(event->type() == QEvent::MouseButtonDblClick)
{
QMouseEvent* mouseEv = (QMouseEvent*)event;
if(mouseEv->buttons() == Qt::LeftButton)
{
display_widgets_[0]->parentWidget()->setUpdatesEnabled(false);
if(!showAll_){
for(auto& it:display_widgets_)
{
it->show();
}
showAll_ = true;
}else{
for(auto& it: display_widgets_)
{
if(watched == it)
{
selected_widget_ = it;
showAll_ = false;
selected_widget_->show();
}else
{
it->hide();
}
}
}
display_widgets_[0]->parentWidget()->setUpdatesEnabled(true);
}
return true;
}
return QMainWindow::eventFilter(watched, event);
}
しかしは、Double Click
の過程で、私はこの効果ました:
をそして、それは最終的には通常のサイズにリサイズしますが、私はいつもこの醜い変換を得ました。
詳細情報: 私は、高速なレンダリングへのスレッドに各QGLWidget
コンテキストを移動できるようにQGLWidget
自分自身を作成するためにQGLWidget
をサブクラス化。いくつかの試行錯誤の後