1

我有这个代码:

  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 功能。执行此冻结。停在那里不会给我任何线索。两个指针都不为 NULL。这是 Qt 内部的某种循环,我不明白。

任何想法?

4

1 回答 1

2

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

于 2014-01-13T17:40:01.957 回答