天天看點

Qt實作自定義模型基于QAbstractItemModel

Qt實作自定義模型基于QAbstractItemModel

  • 一個小例子 QTableView + QStandardItemModel 

Cpp代碼  

Qt實作自定義模型基于QAbstractItemModel
  1. QStandardItemModel model;  
  2. //設定大小  
  3. model.setColumnCount(3);    //列  
  4. model.setRowCount(musicFound);    //行  
  5. //設定标題  
  6. model.setHeaderData(0,Qt::Horizontal,"ID");  
  7. //添加資料  
  8. for(int j=0;j<row;j++)  
  9. {  
  10.             //寫id  
  11.             QStandardItem *itemID = new QStandardItem("hello");//QString::number(j)));  
  12.             model.setItem(j,0,itemID);  
  13. }  
  14. //選擇這個model  
  15. m_ui->tableView->setModel(&model);  
  16. //隐藏左邊那列  
  17. m_ui->tableView->verticalHeader()->hide();  
  18. //列寬  
  19. m_ui->tableView->setColumnWidth(0,30);  
  20. //整行選擇  
  21. m_ui->tableView->setSelectionBehavior(QAbstractItemView::SelectRows);  

繼續閱讀