2016-12-03 22 views
0

同じウィンドウにたくさんのウィジェットを配置できるように、QScrollAreaを使用しようとしています。残念ながら、QScrollAea(中央)を含むQWidgetは、ウィンドウのサイズにスケーリングしていません。それは...私が望むように...私は別のものを試しましたが、私はそれを修正することはできません...アイディア?QScrollAreaがウィンドウにスケーリングしない

QWidget *central = new QWidget(this); 
QScrollArea *scroll = new QScrollArea(this); 
QVBoxLayout *vLayout = new QVBoxLayout(central); 

this->setCentralWidget(central); 
central->setLayout(vLayout); 

//vect is not empty 
for (elt t : vect) 
{ 
    vLayout->addWidget(new TweetDisplay(elt, t)); 
} 

//If I remove those three lines, everything is displayed but of course, I can't scroll. 
scroll->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn); 
scroll->setWidget(central); 
scroll->setWidgetResizable(true); 

参照用画像:

Screenshot

答えて

2

代わりのcentralに中央のウィジェットを設定し、あなたの中心ウィジェットとしてscrollを使用してみてください。このように、適切な行は次のようになります。

this->setCentralWidget(scroll); 

ので、実際には意味がありません中央ウィジェットとしてそれを設定し、スクロール領域は、それがすでに含まれているウィジェットとしてcentralを使用しています覚えておいてください。

関連する問題