QTableWiget的简单使用

 QTableWidget是QT程序中常用的显示数据表格的空间,很类似于VC、C#中的DataGrid。说到QTableWidget,就必须讲一下它跟QTabelView的区别了。QTableWidget是QTableView的子类,主要的区别是QTableView可以使用自定义的数据模型来显示内容(也就是先要通过setModel来绑定数据源),而QTableWidget则只能使用标准的数据模型,并且其单元格数据是QTableWidgetItem的对象来实现的(也就是不需要数据源,将逐个单元格内的信息填好即可)。这主要体现在QTableView类中有setModel成员函数,而到了QTableWidget类中,该成员函数变成了私有。使用QTableWidget就离不开QTableWidgetItem。QTableWidgetItem用来表示表格中的一个单元格,正个表格都需要用逐个单元格构建起来。

/*QTbaleWidget*/
    //设置列的数量
    ui->tableWidget->setColumnCount(4);
    //设置行的数量
    ui->tableWidget->setRowCount(10);
   //设置表格列的标题头
    QStringList HeaderList;
    HeaderList <<"name"<<"age"<<"gender"<<"salary";
    ui->tableWidget->setHorizontalHeaderLabels(HeaderList);
    //设置表格是不可编辑的状态
    ui->tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
    //设置表格为整行选中
    /*

Constant

Value

Description

QAbstractItemView.SelectItems

0

Selecting single items.选中单个单元格

QAbstractItemView.SelectRows

1

Selecting only rows.选中一行

QAbstractItemView.SelectColumns

2

Selecting only columns.选中一列

    */
    ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);
    //单个选中和多个选中的设置:
    /*
     * QAbstractItemView.NoSelection      不能选择

QAbstractItemView.SingleSelection  选中单个目标

QAbstractItemView.MultiSelection    选中多个目标

QAbstractItemView.ExtendedSelection   QAbstractItemView.ContiguousSelection 的区别不明显,主要功能是正常情况下是单选,但按下Ctrl或Shift键后,可以多选
    */
    ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);
    ui->tableWidget->setItem(0,0,new QTableWidgetItem("memory"));

参考:http://blog.csdn.net/polokang/article/details/6696982

界面效果

 

posted @ 2018-01-18 14:54  轻风々  阅读(2477)  评论(0编辑  收藏  举报