Qt QTableWidget函数说明

Qt QTableWidget函数说明

基本函数

1)clearContents()
清除表格数据区的所有内容,但是不清除表头

2)rowCount()
返回表格数据区的行数

3)setTextAlignment (int alignment)
设置文字对齐方式
参数为单元格内的对齐方式,和字符输入顺序是自左相右还是自右向左。
水平对齐方式有:
Constant Value Description
Qt.AlignLeft 0x0001 Aligns with the left edge.
Qt.AlignRight 0x0002 Aligns with the right edge.
Qt.AlignHCenter 0x0004 Centers horizontally in the available space.
Qt.AlignJustify 0x0008 Justifies the text in the available space.
垂直对齐方式:
Constant Value Description
Qt.AlignTop 0x0020 Aligns with the top.
Qt.AlignBottom 0x0040 Aligns with the bottom.
Qt.AlignVCenter 0x0080 Centers vertically in the available space.
如果两种都要设置,只要用 Qt.AlignHCenter | Qt.AlignVCenter 的方式即可

4)setBackground(const QBrush &brush)
设置单元格背景颜色

5)setForeground(const QBrush &brush)
设置单元格前景色

6)setIcon(const QIcon &icon)
为单元格设置一个显不图标

7)setFont(const QFont &font)
为单元格显示文字设置字体。

8)setCheckState(Qt::CheckState state)
设置单元格勾选状态,单元格里出现一个QCheckBox组件。

9)setFlags(Qt::ItemFlags flags)
设置单元格的一些属性标记。

10)insertRow(int row)
在行号为row的行前面插入一行,如果row等于或大于总行数,则在表格最后添加一行。insertRow()函数只是插入一个空行,不会为单元格创建

11)removeRow(int row)
删除行号为 row 的行。

12)resizeColumnsToContents()
自动调整所有列的宽度,以适应其内容。

13)resizeColumnToContents(int column)
自动调整列号为 co/www 的列的宽度。

14)resizeRowsToContents()
自动调整所有行的高度,以适应其内容。

15)resizeRowToContents(int row)
自动调整行号为 raw 的行的高度。

16)horizontalHeader()->setVisible(false);
是否显示水平表头

17)verticalHeader()->setVisible(false);
是否显示垂直表头

18)setSelectionBehavior()
可以设置选择方式为单元格选择,还是行选
QAbstractItemView::SelectItems 0 Selecting single items.选中单个单元格
QAbstractItemView::SelectRows 1 Selecting only rows.选中一行
QAbstractItemView::SelectColumns 2 Selecting only columns.选中一列

19)setEditTriggers()
在默认情况下,表格里的字符是可以更改的,比如双击一个单元格,就可以修改原来的内容,如果想禁止用户的这种操作,让这个表格对用户只读,可以这样:
tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
QAbstractItemView::NoEditTriggers是QAbstractItemView.EditTrigger枚举中的一个,都是触发修改单元格内容的条件:

QAbstractItemView::NoEditTriggers 0 不能对表格内容进行修改
QAbstractItemView::CurrentChanged 1 任何时候都能对单元格修改
QAbstractItemView::DoubleClicked 2 双击单元格
QAbstractItemView::SelectedClicked 4 单击已选中的内容
QAbstractItemView::EditKeyPressed 8 Editing starts when the platform edit key has been pressed over an item.
QAbstractItemView::AnyKeyPressed 16 按下任意键就能修改
QAbstractItemView::AllEditTriggers 31 以上条件全包括

19)setSelectionMode
设置为可以选中多个目标
该函数的参数还可以是:
QAbstractItemView::NoSelection 不能选择
QAbstractItemView::SingleSelection 选中单个目标
QAbstractItemView::MultiSelection 选中多个目标
QAbstractItemView::ExtendedSelection QAbstractItemView::ContiguousSelection 的区别不明显,主要功能是正常情况下是单选,但按下Ctrl或Shift键后,可以多选

20)horizontalHeaderItem(0)
获取表头指针

21)setSpan
tableWidget->setSpan(0, 0, 3, 1) # 其参数为: 要改变单元格的 1行数 2列数 要合并的 3行数 4列数

基本用法

1)在单元格中加入控件

QTableWidget不仅允许把文字加到单元格,还允许把控件也放到单元格中。比如,把一个下拉框加入单元格,可以这么做:

QComboBox *comBox = new QComboBox(); 
comBox->addItem("Y"); 
comBox->addItem("N"); 
tableWidget->setCellWidget(0,2,comBox); 

2)设置单元格的大小
首先,可以指定某个行或者列的大小
tableWidget->setColumnWidth(3,200);
tableWidget->setRowHeight(3,60);
还可以将行和列的大小设为与内容相匹配
tableWidget->resizeColumnsToContents();
tableWidget->resizeRowsToContents();

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

付宇利

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值