我有一个QDeclarativeView
我想提出QScrollArea
的问题是滚动区域不起作用。我设置声明性视图有多大并不重要。我没有得到滚动条,就像它不能告诉视图需要滚动条一样。如果我不设置 setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn); 滚动条不出现。
父级作为中央小部件插入到边框布局中 - 我使用此布局http://qt-project.org/doc/qt-4.8/layouts-borderlayout.html
myWidgets *editWidget = new myWidgets(pathToExe,viewerMgr, this);
editWidget->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
这是我的小部件:
QScrollArea* scroll = new QScrollArea();
view = new QDeclarativeView(this);
view->setSource(QUrl::fromLocalFile(path));
view->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored);
view->setResizeMode(QDeclarativeView::SizeViewToRootObject);
scroll->setWidget(view);
scroll->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
scroll->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
scroll->setWidgetResizable(true);
我在内容上尝试了不同的大小,但就像 qscrollview 没有检测到我的小部件何时大于 qscrollarea 的可见视图。