QTableWidget
Posted ike_li
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QTableWidget相关的知识,希望对你有一定的参考价值。
1.QTableWidget继承自QTableView。
QSqlTableModel能与QTableView绑定,但不能于QTableWidget绑定。? QTableWidget是QTableView的子类,主要的区别是QTableView可以使用自定义的数据模型来显示内容(也就是先要通过setModel来绑定数据源),而QTableWidget则只能使用标准的数据模型,并且其单元格数据是QTableWidgetItem的对象来实现的(也就是不需要数据源,将逐个单元格内的信息填好即可)。这主要体现在QTableView类中有setModel成员函数,而到了QTableWidget类中,该成员函数变成了私有。使用QTableWidget就离不开QTableWidgetItem。QTableWidgetItem用来表示表格中的一个单元格,正个表格都需要用逐个单元格构建起来。
QTableWidget和QTableView区别见:https://blog.csdn.net/zyc_csdn/article/details/78830542
tbl_task_list=new QTableWidget(this); tbl_task_list->setMinimumHeight (150); tbl_task_list->setMaximumWidth (500); tbl_task_list->setColumnCount(5); tbl_task_list->verticalHeader()->setVisible(false); tbl_task_list->horizontalHeader()->setVisible(true); tbl_task_list->setShowGrid(true); //设置显示格子线 tbl_task_list->setEditTriggers(QAbstractItemView::NoEditTriggers); tbl_task_list->setSelectionBehavior(QAbstractItemView::SelectRows); tbl_task_list->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch); QStringList header_task; header_task<<"任务名称"<<"小车"<<"任务状态"<<"任务产生时间"<<"任务相应时间"; tbl_task_list->setHorizontalHeaderLabels(header_task); tbl_task_list->setObjectName("tbl_task_list"); /* //添加一行数据 rows=tbl_task_list->rowCount ()+1; tbl_task_list->setRowCount (rows); addTaskItem("111",rows-1,0); addTaskItem("222",rows-1,1); addTaskItem("333",rows-1,2); addTaskItem("444",rows-1,3); addTaskItem("555",rows-1,4); //添加一行数据 rows=tbl_task_list->rowCount ()+1; tbl_task_list->setRowCount (rows); addTaskItem("aaa",rows-1,0); addTaskItem("bbb",rows-1,1); addTaskItem("cccc",rows-1,2); addTaskItem("dddd",rows-1,3); addTaskItem("eeee",rows-1,4);
void Widget::addTaskItem(QString data,int row ,int col) { QTableWidgetItem *item = new QTableWidgetItem(data); QFont font; font.setFamily ("Verdana"); font.setBold (false); font.setPixelSize (12); item->setFont(font); item->setTextAlignment (Qt::AlignCenter); tbl_task_list->setItem(row,col,item); }
以上是关于QTableWidget的主要内容,如果未能解决你的问题,请参考以下文章