对表格型数据,Qt有现成的模型/视图类,QStandardItemModel类和QTableView类。
模型类提供数据,视图类则负责展示数据。所以数据及数据的相关信息(如文本大小、颜色、数据类型等)由模型类(QStandardItemModel)管理,数据的显示(如表格是否可以编辑、选择方式、行列的大小策略等)由视图类(QTableView)管理。
所以Qt表格模型和视图的使用步骤大致如下:
1. 创建模型对象
1 |
QStandardItemModel *import_model = new QStandardItemModel(this); |
2. 添加标题
1 2 3 4 |
import_model->setHeaderData(0,Qt::Horizontal,tr("location")); import_model->setHeaderData(1,Qt::Horizontal,tr("status")); |
3. 添加数据行
1 2 3 |
import_model->setItem(i,0,new QStandardItem(a_data_item->location)); |
4. 修改数据的属性
1 2 3 4 |
import_model->item(i,1)->setTextAlignment(Qt::AlignCenter); import_model->item(i,1)->setBackground(QBrush(status_color)); |
5. 将模型设置给视图
1 2 3 |
file_view->setModel(import_model); |
6. 调整视图属性
1 2 3 |
file_view->horizontalHeader()->setResizeMode(0,QHeaderView::Stretch); |
时间: 2024-10-05 06:05:11