一个QTModule view的最简单例子

发布时间 2023-08-01 14:36:19作者: 北京开发

来自:  https://qt.0voice.com/?id=420

  1. #include <QtWidgets>
  2. int main(int argc, char *argv[])
  3. {
  4. QApplication app(argc, argv);
  5. // 创建标准项目模型
  6. QStandardItemModel model(4, 3);
  7. // 设置表头
  8. QStringList labels;
  9. labels << "Name" << "Age" << "Gender";
  10. model.setHorizontalHeaderLabels(labels);
  11. // 添加数据
  12. QList<QStandardItem *> row1 = {new QStandardItem("John"), new QStandardItem("25"), new QStandardItem("Male")};
  13. QList<QStandardItem *> row2 = {new QStandardItem("Jane"), new QStandardItem("30"), new QStandardItem("Female")};
  14. QList<QStandardItem *> row3 = {new QStandardItem("Bob"), new QStandardItem("45"), new QStandardItem("Male")};
  15. QList<QStandardItem *> row4 = {new QStandardItem("Alice"), new QStandardItem("20"), new QStandardItem("Female")};
  16. model.setItem(0, 0, row1.at(0));
  17. model.setItem(0, 1, row1.at(1));
  18. model.setItem(0, 2, row1.at(2));
  19. model.setItem(1, 0, row2.at(0));
  20. model.setItem(1, 1, row2.at(1));
  21. model.setItem(1, 2, row2.at(2));
  22. model.setItem(2, 0, row3.at(0));
  23. model.setItem(2, 1, row3.at(1));
  24. model.setItem(2, 2, row3.at(2));
  25. model.setItem(3, 0, row4.at(0));
  26. model.setItem(3, 1, row4.at(1));
  27. model.setItem(3, 2, row4.at(2));
  28. // 创建表格视图
  29. QTableView view;
  30. view.setModel(&model);
  31. // 显示窗口
  32. QMainWindow window;
  33. window.setCentralWidget(&view);
  34. window.show();
  35. return app.exec();
  36. }