QListWidget特别简单,但有两种添加item的方式

虽然特别简单,但是对于小白来说,还是有必要过一下脑子和眼睛,当然还得过手(江湖传言:眼过千变,不如手过一遍),所以记录在此:

#include "tablewidgetxxx.h"
#include <QtGui/QApplication>
#include <QtGui/QListWidget>
#include <QtGui/QSplitter>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QSplitter splitter;

    // 方法一,使用QStringList做内部模型,一下子添加所有内容
    QListWidget * left = new QListWidget();
    QStringList list;
    list << "98" << "99" << "100" << "101" << "102";
    left->addItems( list );
    left->sortItems();

    // 方法二,使用QListWidgetItem做内部模型,一项一项添加
    QListWidget * right = new QListWidget();
    for ( int i=98; i<103; i++) {
        QListWidgetItem * item = new QListWidgetItem;
        item->setData(Qt::DisplayRole, i);
        right->addItem(item);
    }
    right->sortItems();

    // 显示
    splitter.addWidget(left);
    splitter.addWidget(right);
    splitter.show();

    return app.exec();
}

参考:

http://book.51cto.com/art/201207/347902.htm

------------------------------------------------------------------------

QListWidget 去掉选中项

1、先去掉选中项的虚线框:
设置为无焦点:把FocusPolicy设置成:NoFocus

2、设置QListWidgetItem标志
调用setFlags函数,去掉Qt::ItemIsSelectable属性,setFlags(pListItem->flags() & ~Qt::ItemIsSelectable)

参考: http://blog.csdn.net/itjobtxq/article/details/9198561

原文地址:https://www.cnblogs.com/findumars/p/4060251.html