天天看点

QT(8)_数据表格 QTableView 新手学习总结

QTableView 简单应用

QT(8)_数据表格 QTableView 新手学习总结
QStandardItemModel *model = new QStandardItemModel();
	// /*设置列字段名*/
	model->setColumnCount(2);
	model->setHeaderData(0, Qt::Horizontal, QString::fromLocal8Bit("X"));	
	model->setHeaderData(1, Qt::Horizontal, QString::fromLocal8Bit("Y"));
	// /*设置行字段名*/
	model->setRowCount(2);
	model->setHeaderData(0, Qt::Vertical, "记录一");
	model->setHeaderData(1, Qt::Vertical, "记录二");

	//*设置一条数据*/
	model->setItem(0, 0, new QStandardItem("张三"));
	model->setItem(0, 1, new QStandardItem("男"));
	model->setItem(1, 0, new QStandardItem("张"));
	model->setItem(1, 1, new QStandardItem("男一"));

	ui.tableView->setModel(model);
 	ui.tableView->standItemModel->item(i,0)->setForeground(QBrush(QColor(255,0,0)));//设置字符颜色
  	ui.tableView->standItemModel->item(i,0)->setTextAlignment(Qt::AlignCenter);  //设置表格内容居中

	 //设置表格属性
    ui.tableView->horizontalHeader()->setDefaultAlignment(Qt::AlignCenter);     //表头信息显示居中
    ui.tableView->horizontalHeader()->setSectionResizeMode(0,QHeaderView::Fixed);//表头列宽不可变
    ui.tableView->horizontalHeader()->setSectionResizeMode(1,QHeaderView::Fixed);
  	ui.tableView->horizontalHeader()->setSectionResizeMode(2,QHeaderView::Stretch);//设定第2列表头
  																					弹性拉伸
  
   	ui.tableView->setColumnWidth(0,100);       						//设定表格第0列宽度
    ui.tableView->setColumnWidth(1,200);
    ui.tableView->verticalHeader()->hide();    						//隐藏默认显示的行头
    ui.tableView->setSelectionBehavior(QAbstractItemView::SelectRows); //设置选中时整行选中
    ui.tableView->setEditTriggers(QAbstractItemView::NoEditTriggers);  //设置表格属性只读,不能编辑
	ui.tableView->setContextMenuPolicy(Qt::CustomContextMenu);   //需要在表格使用右键菜单,
																	需要启动该属性
	ui.tableView->sortByColumn(0,Qt::AscendingOrder);            //表格第0列,按降序排列
    standItemModel->removeRows(0,10);                         //删除从第0行开始的连续10行


           

更多内容参考:https://blog.csdn.net/qq769651718/article/details/79357938

继续阅读