Qt QtableView使用
1 ui->setupUi(this); 2 ui->mainToolBar->hide(); 3 4 tableView = new QTableView(this); 5 6 7 // 设置表头 8 QStandardItemModel *studentModel = new QStandardItemModel(); 9 studentModel->setHorizontalHeaderItem(0, new QStandardItem(tr("姓名"))); 10 studentModel->setHorizontalHeaderItem(1, new QStandardItem(tr("学号"))); 11 studentModel->setHorizontalHeaderItem(2, new QStandardItem(tr("性别"))); 12 studentModel->setHorizontalHeaderItem(3, new QStandardItem(tr("年龄"))); 13 tableView->setModel(studentModel); 14 15 // 设置表头格式 16 // studentModel->horizontalHeaderItem(0)->setTextAlignment(Qt::AlignLeft); 17 18 // 设置表格宽度 19 // tableView->setColumnWidth(0, 100); 20 21 // 隐藏行头 22 tableView->verticalHeader()->hide(); 23 24 // 整行选中 25 tableView->setSelectionBehavior(QAbstractItemView::SelectRows); 26 27 // 不可编辑 28 tableView->setEditTriggers(QAbstractItemView::NoEditTriggers); 29 30 // 添加行 31 studentModel->setItem(0, 0, new QStandardItem("张三")); 32 studentModel->setItem(0, 1, new QStandardItem("10021")); 33 studentModel->setItem(0, 2, new QStandardItem("男")); 34 studentModel->setItem(0, 3, new QStandardItem("20")); 35 36 studentModel->setItem(1, 0, new QStandardItem("李四")); 37 studentModel->setItem(1, 1, new QStandardItem("10022")); 38 studentModel->setItem(1, 2, new QStandardItem("男")); 39 studentModel->setItem(1, 3, new QStandardItem("21")); 40 41 // 居中 42 studentModel->item(0, 0)->setTextAlignment(Qt::AlignCenter); 43 44 // 颜色 45 studentModel->item(0, 0)->setForeground(QBrush(QColor(255, 0, 0))); 46 47 // 加粗 48 studentModel->item(0, 1)->setFont(QFont("Times", 10, QFont::Black)); 49 50 // 排序 51 studentModel->sort(3, Qt::DescendingOrder); 52 53 // 添加布局 54 QGridLayout *tableLayout = new QGridLayout(ui->centralWidget); 55 tableLayout->addWidget(tableView);