2013-07-18 429 views
1

我正在玩Config Dialog Example,一切都很好。然後我在對話框的右邊部分改變了一些東西。 然後我發現對話框左邊的contentsWidget(QListWidget)變小了,並顯示了滾動條(水平和垂直)。Init QListWidget顯示其所有內容(沒有滾動條)

我希望QListWidget顯示其所有內容,以便不需要滾動條。 所有項目都在開始時添加並修復。沒有動態。 我想有一個簡單的方法可以讓QListWidget在開始時展開所有內容。

任何人都可以幫助我,告訴我魔法字嗎?

下面是代碼:

contentsWidget = new QListWidget; 
contentsWidget->setViewMode(QListView::IconMode); 
contentsWidget->setIconSize(QSize(96, 84)); 
contentsWidget->setMovement(QListView::Static); 
contentsWidget->setMaximumWidth(128); 
contentsWidget->setSpacing(12); 
//contentsWidget->setMinimumWidth(contentsWidget->sizeHintForColumn(0)); 
//contentsWidget->setMaximumWidth(contentsWidget->sizeHintForColumn(0)); 
//contentsWidget->adjustSize(); 
//qDebug()<<contentsWidget->sizeHintForColumn(0); 
createIcons(); 
contentsWidget->setCurrentRow(0); 

QHBoxLayout *horizontalLayout = new QHBoxLayout; 
horizontalLayout->addWidget(contentsWidget); 
horizontalLayout->addWidget(pagesWidget, 1); 

我試過contentsWidget->sizeHintForColumn(0),但沒有奏效。它是0.我嘗試了其他一些方法,但沒有奏效。

+1

[QListWidget調整大小到內容]的可能重複(http://stackoverflow.com/questions/6337589/qlistwidget-adjust-size-to-content) – Trilarion

回答

-1

我想你應該嘗試:

contentsWidget->setMinimumWidth(128); 

這將確保沒有問題什麼的contentsWidget規模將始終是至少128,因此大到足以包含的圖標。