Qt实现自定义模型基于QAbstractItemModel
- 一个小例子 QTableView + QStandardItemModel
- QStandardItemModel model;
- //设置大小
- model.setColumnCount(3); //列
- model.setRowCount(musicFound); //行
- //设置标题
- model.setHeaderData(0,Qt::Horizontal,"ID");
- //添加数据
- for(int j=0;j<row;j++)
- {
- //写id
- QStandardItem *itemID = new QStandardItem("hello");//QString::number(j)));
- model.setItem(j,0,itemID);
- }
- //选择这个model
- m_ui->tableView->setModel(&model);
- //隐藏左边那列
- m_ui->tableView->verticalHeader()->hide();
- //列宽
- m_ui->tableView->setColumnWidth(0,30);
- //整行选择
- m_ui->tableView->setSelectionBehavior(QAbstractItemView::SelectRows);