QTableView初始化参数设置

本文详细介绍了如何使用Qt的QStandardItemModel类创建并定制列表视图,包括设置列数、表头名称、行高、列宽,以及应用样式和自适应列宽等操作,实现了列表视图的美观展示。

QStandardItemModel* m_list_item_model = NULL;

/如果列表项目对象指针为空,则创建列表项目指针对象/

	if (m_list_item_model == NULL)
	{
		this->m_list_item_model = new QStandardItemModel(this->ui.m_PatientCheckTableView);
	}
	this->m_list_item_model->clear();
	this->m_list_item_model->setColumnCount(6);//设置列表列数

	/*---设置列表每一列表头的显示内容----*/
	this->m_list_item_model->setHeaderData(0, Qt::Horizontal, tr("张三"));
	this->m_list_item_model->setHeaderData(1, Qt::Horizontal, tr("李四"));
	this->m_list_item_model->setHeaderData(2, Qt::Horizontal, tr("王五"));
	this->m_list_item_model->setHeaderData(3, Qt::Horizontal, tr("小米"));
	this->m_list_item_model->setHeaderData(4, Qt::Horizontal, tr("华为"));
	this->m_list_item_model->setHeaderData(5, Qt::Horizontal, tr("vivo"));

	/*---设置列表属性----*/
	this->ui.m_TableView->setModel(this->m_list_item_model);//加载列表项目对象
	this->ui.m_TableView->setAlternatingRowColors(true);//设置区分奇偶行
	//this->ui.m_TableView->horizontalHeader()->setDefaultAlignment(Qt::AlignLeft);//表头内容居左显示
	this->ui.m_TableView->horizontalHeader()->setDefaultAlignment(Qt::AlignVCenter);//表头内容居中显示
	this->ui.m_TableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);//均分列宽
	//this->ui.m_TableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Fixed);//可自定义列宽
	this->ui.m_TableView->horizontalHeader()->setFixedHeight(65);//设置表头高
	this->ui.m_TableView->horizontalHeader()->setHighlightSections(false);//关闭列表被选中后表头高亮状态
	this->ui.m_TableView->setSelectionBehavior(QAbstractItemView::SelectRows);//整行选择
	this->ui.m_TableView->setSelectionMode(QAbstractItemView::SingleSelection);//只能单行选择
	this->ui.m_TableView->setEditTriggers(QTableView::NoEditTriggers);//设置非编辑状态
	this->ui.m_TableView->horizontalHeader()->setObjectName("hHeaderPatientCheck");//将列表表头命名
	/*this->ui.m_TableView->setRowHeight(0,50);//设置行高*/

#ifdef VERSION_IS05_2_0
/—设置列表表头样式----/
this->ui.m_PatientCheckTableView->horizontalHeader()->setStyleSheet(“QHeaderView::section{background-color:qlineargradient(x1:0, y1:1, x2:0, y2:0, stop:0 #1f1f1f , stop:1 #4a4a4a);”
“border:2px solid #505050;border-radius: 0px;padding-top:15px;padding-bottom:15px;font-family:“Arial”;color:white;font:20px;image-position:right;}”);
/—设置列表宽度----/
this->ui.m_PatientCheckTableView->setColumnWidth(0, 460);
this->ui.m_PatientCheckTableView->setColumnWidth(1, 350);
this->ui.m_PatientCheckTableView->setColumnWidth(2, 350);
this->ui.m_PatientCheckTableView->setColumnWidth(3, 400);
this->ui.m_PatientCheckTableView->setColumnWidth(4, 350);
this->ui.m_PatientCheckTableView->setColumnWidth(5, 1);

ui.m_ShowEventsTableView->horizontalHeader()->setSectionResizeMode(4, QHeaderView::ResizeToContents);//设置第四列根据内容多少自适应列宽

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值