Qt4 QScrollArea setWidget冻结应用程序

Qt4 QScrollArea setWidget冻结应用程序,qt4,qscrollarea,Qt4,Qscrollarea,我有以下代码: QFrame* contentsFrame = new QFrame(); contentsFrame->setLayout(contentsLyt_); QScrollArea* scrollArea = new QScrollArea(); scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); scrollArea->setVerticalScrollBarP

我有以下代码:

  QFrame* contentsFrame = new QFrame();
  contentsFrame->setLayout(contentsLyt_);

  QScrollArea* scrollArea = new QScrollArea();
  scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
  scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
  scrollArea->setWidgetResizable(false);
  contentsLyt_->addWidget( scrollArea );

  scrollArea->setWidget(contentsFrame);
应用程序在设置小部件时被冻结。我无法调试或进入setWidget,因为它是Qt功能。执行此操作会冻结。停在那里不会给我任何线索。两个指针都不是空的。这是Qt内部的某种循环,我不明白


有什么想法吗?

您正在为滚动区域设置一个小部件,该小部件间接包含滚动区域。我认为这就是为什么Qt会进入一个无限循环