qtableview自动显示行号

问题描述:QTableView怎么实现一行一行的输出显示 大家好,小编为大家解答一个有趣的事情的问题。很多人还不知道一个有趣的事情,现在让我们一起来看看吧!

PyQt4中的QtableView怎样双击获取选中行的行号

qtableview自动显示行号的相关图片

QTableView常用于实现数据的表格显示。下面我们如何按步骤实现学生信息表格:

一 添加表头

//准备数据模型

QStandardItemModel *student_model = new QStandardItemModel();。

student_model->setHorizontalHeaderItem(0, new QStandardItem(QObject::tr("Name")));。

student_model->setHorizontalHeaderItem(1, new QStandardItem(QObject::tr("NO.")));。

student_model->setHorizontalHeaderItem(2, new QStandardItem(QObject::tr("Sex")));。

student_model->setHorizontalHeaderItem(3, new QStandardItem(QObject::tr("Age")));。

student_model->setHorizontalHeaderItem(4, new QStandardItem(QObject::tr("College")));。

//利用setModel()方法将数据模型与QTableView绑定。

ui->student_tableview->setModel(student_model);。

二 设置表格属性

//设置列宽不可变动,即不能通过鼠标拖动增加列宽 。

ui->student_tableview->horizontalHeader()->setResizeMode(0, QHeaderView::Fixed); 。

ui->student_tableview->horizontalHeader()->setResizeMode(1, QHeaderView::Fixed); 。

ui->student_tableview->horizontalHeader()->setResizeMode(2, QHeaderView::Fixed); 。

ui->student_tableview->horizontalHeader()->setResizeMode(3, QHeaderView::Fixed); 。

ui->student_tableview->horizontalHeader()->setResizeMode(4, QHeaderView::Fixed); 。

//设置表格的各列的宽度值 。

ui->student_tableview->setColumnWidth(0,100); 。

ui->student_tableview->setColumnWidth(1,100); 。

ui->student_tableview->setColumnWidth(2,100); 。

ui->student_tableview->setColumnWidth(3,100); 。

ui->student_tableview->setColumnWidth(4,100); 。

//默认显示行头,如果你觉得不美观的话,我们可以将隐藏 。

ui->student_tableview->verticalHeader()->hide(); 。

//设置选中时为整行选中 。

ui->student_tableview->setSelectionBehavior(QAbstractItemView::SelectRows); 。

//设置表格的单元为只读属性,即不能编辑 。

ui->student_tableview->setEditTriggers(QAbstractItemView::NoEditTriggers); 。

//如果你用在QTableView中使用右键菜单,需启用该属性 。

ui->tstudent_tableview->setContextMenuPolicy(Qt::CustomContextMenu);。

三 动态添加行

在表格中添加行时,我们只需要在model中插入数据即可,一旦model中的数据发生变化,QTabelView显示就会做相应的变动。

//在第一行添加学生张三的个人信息(setItem函数的第一个参数表示行号,第二个表示列号,第三个为要显示的数据)。

student_model->setItem(0, 0, new QStandardItem(“张三"));。

student_model->setItem(0, 1, new QStandardItem("20120202"));。

student_model->setItem(0, 2, new QStandardItem("男"));。

student_model->setItem(0, 3, new QStandardItem("18"));。

student_model->setItem(0, 4, new QStandardItem("土木学院"));。

四 设置数据显示的样式

//设置单元格文本居中,张三的数据设置为居中显示。

student_model->item(0, 0)->setTextAlignment(Qt::AlignCenter);。

student_model->item(0, 1)->setTextAlignment(Qt::AlignCenter);。

student_model->item(0, 2)->setTextAlignment(Qt::AlignCenter);。

student_model->item(0, 3)->setTextAlignment(Qt::AlignCenter);。

student_model->item(0, 4)->setTextAlignment(Qt::AlignCenter);。

//设置单元格文本颜色,张三的数据设置为红色。

student_model->item(0, 0)->setForeground(QBrush(QColor(255, 0, 0))); 。

student_model->item(0, 1)->setForeground(QBrush(QColor(255, 0, 0))); 。

student_model->item(0, 2)->setForeground(QBrush(QColor(255, 0, 0))); 。

student_model->item(0, 3)->setForeground(QBrush(QColor(255, 0, 0))); 。

student_model->item(0, 4)->setForeground(QBrush(QColor(255, 0, 0)));。

//将字体加粗

student_model->item(0, 0)->setFont( QFont( "Times", 10, QFont::Black ) );。

student_model->item(0, 1)->setFont( QFont( "Times", 10, QFont::Black ) );。

student_model->item(0, 2)->setFont( QFont( "Times", 10, QFont::Black ) );。

student_model->item(0, 3)->setFont( QFont( "Times", 10, QFont::Black ) );。

student_model->item(0, 4)->setFont( QFont( "Times", 10, QFont::Black ) );。

//设置排序方式,按年龄降序显示。

student_model->sort(3, Qt::DescendingOrder);。

windows下用qt实现qtableview中内容自动换行的相关图片

windows下用qt实现qtableview中内容自动换行

这个不用获取什么行号,你可以用resize重新扩大选择的区域。

比如你选定了a1:a8然后想把b1:b8一起合并,vba代码如下:

Sub test()

activesheet.Range("a1:a8").Resize(, 2).merge。

End Sub

QT中如何删除QTableView自动生成的数字序号列?的相关图片

QT中如何删除QTableView自动生成的数字序号列?

QT的QTableView是基于Model/View架构的,这种设计并没有包含一个完整而独立的组件用于管理用户的交互。一般来说,view仅仅是用作对model数据的展示和对用户输入的处理,而不应该去做其他的工作。在这种结构中,为了获得对用户输入控制的灵活性,这种交互工作交给了delegate,也就是“委托”。

而QT对QTableView的委托QStyleItemDelegate是不支持换行功能的,即使手动加上\r\n,在Table里显示的也只是一个空格。

说到这里,相信你也该猜到了,方法是自定义委托,继承QStyleItemDelegate,在paint函数里面,drawText的时候,用QTextOption设置换行。

我用自己账号回答被判违规了,不能给你追问了不好意思。

请教在QTableView怎么才能不显示行号和列头的相关图片

请教在QTableView怎么才能不显示行号和列头

查看QT帮助文档吧 数字序列可以隐藏的 边框颜色都是可以修改的。

如何从QTableView中获取选定的行数

请问,在QTableView中如何不显示行号和列头。

------解决方案--------------------。

QTableView::horizontalHeader()->hide()方法。

QTableView::verticalHeader()->hide()方法 。

------解决方案--------------------。

C/C++ codetableView->horizonalHeader()->setVisible(false);//这个可以。

原文地址:http://www.qianchusai.com/qtableview%E8%87%AA%E5%8A%A8%E6%98%BE%E7%A4%BA%E8%A1%8C%E5%8F%B7.html

cc/微信头像舟,cc微信头像高清

cc/微信头像舟,cc微信头像高清

国宝大熊猫作文250字以上,国宝大熊猫作文250字以上三年级

国宝大熊猫作文250字以上,国宝大熊猫作文250字以上三年级

motivate变名词,motivate词性转换

motivate变名词,motivate词性转换

rippe-100

rippe-100

illusory什么意思中文,illusion是什么意思中文

illusory什么意思中文,illusion是什么意思中文

华硕电脑bios强制恢复出厂设置,华硕进去bios 怎么恢复出厂设置

华硕电脑bios强制恢复出厂设置,华硕进去bios 怎么恢复出厂设置

一本有魔法的书400想象作文,一本有魔法的书作文400字想象作文优

一本有魔法的书400想象作文,一本有魔法的书作文400字想象作文优

profitability,profitability ratio怎么算

profitability,profitability ratio怎么算

天堂影视-50,天堂影视蜘蛛侠英雄无归

天堂影视-50,天堂影视蜘蛛侠英雄无归

canal2094-0

canal2094-0

三国志战略版速度计算器 三国志战略版张角减伤搭配攻略 - 实用阵容与战法推荐 三国志战略版可以开七级地吗?解锁条件与开荒攻略 三国志战略版最强盾兵阵容推荐与搭配指南 三国志战略版主将与副将搭配指南 三国志战略版最佳战法推荐与搭配指南 三国志战略版霸业厉战封赏优先级指南 三国志战略版章节任务指南 三国志11自制地图与城市 - 玩家创作分享 三国志战略版三战一线铜奴玩法指南 - 平民高效发育攻略 三国志威力加强版11 - 经典策略游戏专题 三国志战略版孙尚香与孙权搭配攻略 - 详细武将分析与阵容推荐 三国志2街机游戏修改版 - 经典怀旧游戏在线玩 三国志9单机中文版免费下载 - 经典策略游戏 三国志战略版姜维战法搭配与技能解析 - 实用攻略 三国志战略版古迹地图 - 简明古迹位置指南 三国志战略版侠客军进攻机制与策略详解 三国志战略版私服无现金珠版免费下载 - 纯净策略游戏体验 三国志13 游戏介绍 - 经典策略历史游戏 三国志战略版七级地多少兵?详细兵力建议与挑战攻略 三国志战略版 - 灵犀互娱官方策略手游 三国志战略版官职一览表 - 游戏官职系统详解 三国志战略版花席限定卡专题 - 获取方式与技能详解 三国志战略版 - 破阵摧坚战法全面推荐与搭配指南 三国志12电脑版下载 - 经典策略游戏官方信息 三国志战略版贴吧 - 玩家攻略与交流社区 三国志战略版电脑单机版 - 经典策略游戏体验 三国志战略版武将属性加成详解 三国志战略版S1周瑜开荒攻略 | 新手开荒阵容与战法搭配指南 三国志战略版配将君 - 实用武将搭配与阵容推荐