2014-02-09 88 views
0

对于我的Qt应用程序,我已经使用了Dock小部件,但是启用了太多dockwidgets会导致它们流出底部的屏幕。 如何将滚动条添加到整个dockwidget区域?将滚动条添加到QDockWidgets区域

下面是一个例子:

码头控件的代码:

QDockWidget *imageDock = new QDockWidget(i18n("Image"), this); 
imageDock->setObjectName("ImageDock"); 
ImageChooserWidget *imageChooserWidget = new ImageChooserWidget(this); 
imageDock->setWidget(imageChooserWidget); 
addDockWidget(Qt::RightDockWidgetArea, imageDock); 
m_dockWidgets.append(imageDock); 
actionCollection()->addAction("show_image_dock", imageDock->toggleViewAction()); 
imageDock->setVisible(false); 
connect(m_vocabularyView, SIGNAL(translationChanged(KEduVocExpression*, int)), 
imageChooserWidget, SLOT(setTranslation(KEduVocExpression*, int))); 

我也有在此之前的手:

setCorner(Qt::TopLeftCorner, Qt::LeftDockWidgetArea); 
setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea); 
setCorner(Qt::TopRightCorner, Qt::RightDockWidgetArea); 
setCorner(Qt::BottomRightCorner, Qt::RightDockWidgetArea); 

回答

2

创建一个QScrollArea,把它进入码头小部件并将您的内容放入滚动区域。您可能需要拨打scrollArea->setWidgetResizable(true)才能正确调整内容大小。

+0

thnx,尽管那不是我所需要的,但它会工作。此外,tabifyDockWidget()不适合我?有任何想法吗? – R4chi7