QTableView 结合QStandardItemModel 使用
mainwindow.h:
1 class MainWindow : public QMainWindow 2 { 3 Q_OBJECT 4 5 public: 6 MainWindow(QWidget *parent = 0); 7 ~MainWindow(); 8 9 QStandardItemModel model; 10 11 };
mainwindow.cpp:
1 #include "mainwindow.h" 2 #include <QLayout> 3 #include <QTableView> 4 #include <QHeaderView> 5 #include <QDebug> 6 7 8 MainWindow::MainWindow(QWidget *parent) 9 : QMainWindow(parent) 10 11 { 12 this->setFixedSize(800,600); 13 QWidget *widget=new QWidget(this); 14 this->setCentralWidget(widget); 15 QVBoxLayout *lay=new QVBoxLayout(this); 16 17 QStringList headitems={"测试1","测试2","测试3","测试4"}; 18 QTableView *m_table=new QTableView(this); 19 20 //自适应所有列,让它布满整个空间 21 m_table->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch); 22 m_table->horizontalHeader()->setDefaultSectionSize(48); 23 //m_table->setRowHeight(0,30); 24 model.setHorizontalHeaderLabels(headitems); 25 26 QList<QStandardItem*> list; 27 for (int i = 0; i < 4; ++i) { 28 QStandardItem *item = new QStandardItem("test"+QString("%0").arg(i)); 29 list<<item; 30 } 31 model.appendRow(list); 32 m_table->setModel(&model); 33 lay->addWidget(m_table); 34 widget->setLayout(lay); 35 36 } 37 38 MainWindow::~MainWindow() 39 { 40 41 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?