淺談QTableView和QTableWidget資料表格顯示方式
一、淺談QTableView和QTableWidget資料表格顯示方式
① QTableView是基於MVC架構,QTableView表格用來做顯示,QStandardItemModel用來做資料模型控制,QStandardItem用來做資料來源,而且是一個單元格一個數據源。在使用過程中都是使用這些類定義的物件。
QTableView tableView;
QStandardItemModel model;
QStandardItem item;
tableViem.setModel(model);
model.setItem(item);
item.setData();
有了大的概念之後就可以按著想要的效果去對應的物件裡做工作了。比如我想把資料居中顯示,就可以去item
Model中也有setData函式,可以在裡面設定資料,前提是要先用model.index()函式獲得表格資料的model索引。而且自已寫一個QStandardItemModel的繼承類,重寫裡面的data函式,就可以實現自已定義的顯示方式,比如居中顯示。
為了實現有了一行資料,才顯示一行在Table中,可以使用model.setItem函式增加一個item,就會對應顯示一行。
其餘的根據各自的函式加入對應的引數進去。
② QTableWidget是QTableView的子類,
QTableView tableView;
QStandardItem item;
tableView.setItem(item)
item.setData();
可以用ui->regionTableViewinsertRow(ui->regionTableView->rowCount())增加一行空間,但是裡面要加入item實體才可以顯示出內容;用item->setTextAlignment(Qt::AlignCenter)讓item中的資料居中顯示。