2015-12-14 68 views
0

我幾乎在任何地方搜索如何將verticalScrollBar添加到QListWidget,但我無法找到適合我的問題的答案。如何添加免費滾動條到qlistwidget

我試圖顯示QProcessQListWidget的輸出。但是沒有垂直滾動條。在我的例子中,我有200行,但我只能看到5行,因爲沒有滾動條。這是我的嘗試;

QString program = "ssh"; 
    QStringList arguments; 
    arguments << "localhost" << "tail" << "-n" << "200" << "log.txt"; 

    QProcess *myProcess = new QProcess(this); 
    myProcess->start(program, arguments); 
    myProcess->waitForFinished(); 
    QString output(myProcess->readAllStandardOutput()); 

     QListWidgetItem *newItem = new QListWidgetItem; 
     newItem->setText(output); 
     ui->listWidget->insertItem(0, newItem); 

     ui->listWidget->setMinimumWidth(ui->listWidget->sizeHintForColumn(0)); 

     ui->listWidget->verticalScrollBar()->width()`;` 

回答

0

QListWidget的項目通常不會自動換行,所以你可能啓用使用setWordWrap(true)自動換行。 此外,您可以使用強制使滾動條可見。

最後使用setVerticalScrollMode(QAbstractItemView::ScrollPerPixel)所以你可以滾動單個大項目。默認值爲ScrollPerItem,這就是爲什麼你看不到任何滾動條:沒有必要使用滾動條,因爲該項目已經在視口中。