您的位置:首页 > Web前端

Qt Style Sheet(五) --- QTextTable Class Reference

2011-11-16 18:57 369 查看

QTextTableClassReference

[QtGuimodule]

该类描绘一个表格在QTextDocument
#include<QTextTable>
继承从QTextFrame
注意:该类所有函数都是可重入的
公共函数:
[align=right]void[/align]
[align=left]appendColumns(intcount)[/align]
[align=right]void[/align]
[align=left]appendRows(intcount)[/align]
[align=right]QTextTableCell[/align]
[align=left]cellAt(introw,intcolumn)const[/align]
[align=right]QTextTableCell[/align]
[align=left]cellAt(intposition)const[/align]
[align=right]QTextTableCell[/align]
[align=left]cellAt(constQTextCursor&cursor)const[/align]
[align=right]int[/align]
[align=left]columns()const[/align]
[align=right]QTextTableFormat[/align]
[align=left]format()const[/align]
[align=right]void[/align]
[align=left]insertColumns(intindex,intcolumns)[/align]
[align=right]void[/align]
[align=left]insertRows(intindex,introws)[/align]
[align=right]void[/align]
[align=left]mergeCells(introw,intcolumn,intnumRows,intnumCols)[/align]
[align=right]void[/align]
[align=left]mergeCells(constQTextCursor&cursor)[/align]
[align=right]void[/align]
[align=left]removeColumns(intindex,intcolumns)[/align]
[align=right]void[/align]
[align=left]removeRows(intindex,introws)[/align]
[align=right]void[/align]
[align=left]resize(introws,intcolumns)[/align]
[align=right]QTextCursor[/align]
[align=left]rowEnd(constQTextCursor&cursor)const[/align]
[align=right]QTextCursor[/align]
[align=left]rowStart(constQTextCursor&cursor)const[/align]
[align=right]int[/align]
[align=left]rows()const[/align]
[align=right]void[/align]
[align=left]setFormat(constQTextTableFormat&format)[/align]
[align=right]void[/align]
[align=left]splitCell(introw,intcolumn,intnumRows,intnumCols)[/align]
详细描述:
一个表是一个行列的组合。每一个表包含至少一行和一列。每个单元包含一个块,被一个框架包围。
表通常是使用QTextCursor::insertTable()插入。我们能插入一个表用三行两列在目前的光标位置。

QTextCursorcursor(editor->textCursor());

cursor.movePosition(QTextCursor::Start);


QTextTable*table=cursor.insertTable(rows,columns,tableFormat);


一个表的格式可以在创建时定义,也可使用setFormat()定义。
目前正在编辑的表通常使用QTextCursor::currentTable()函数定位。这允许他的格式或者尺度被改变在他已经被插入到一个文件后。
一个表的大小能别改变使用resize(),或者通过使用insertRows(),insertColumns(),
removeRows(),removeColumns()。。使用cellAt()来找到表格单元。
表格行的开始和结束位置能被找到,通过移动一个光标在一个表内。使用rowStart()和rowEnd()函数来获得光标位置。
在一个QTextTable里的行和列能被合并或者分开,使用mergeCells()和splitCell()函数。尽管如此,只有那些跨越多行或列的表格能被分开。(合并或者分开不改变行和列的数目)
注意如果你已经合并多行和列变为一个单元。你将不能分开合并的单元变为一个比原来拥有更多行或者列的单元。如果你要分开成更多的单元,你需重复分开操作。



假设我们有2*3的表,合并第一行的两列,我们引用mergeCells()当row=0,column=0,numRows=1andnumColumns=2.
[align=left][/align]
[align=left]table->mergeCells(0,0,1,2);[/align]


[align=left]得到下面大的表。分开它,我们使用splitCell()参数numRowsandnumCols=1.[/align]
[align=left]table->splitCell(0,0,1,1);[/align]


[align=left]结果.[/align]
成员函数文件:

voidQTextTable::appendColumns(intcount)

增加count个列在表的右边。

voidQTextTable::appendRows(intcount)

QTextTableCellQTextTable::cellAt(introw,intcolumn)const

返回指定行列的表格单元

QTextTableCellQTextTable::cellAt(intposition)const

QTextTableCellQTextTable::cellAt(constQTextCursor&cursor)const

intQTextTable::columns()const

QTextTableFormatQTextTable::format()const

返回表格的格式

voidQTextTable::insertColumns(intindex,intcolumns)

在index列前,插入columns列。

voidQTextTable::insertRows(intindex,introws)

voidQTextTable::mergeCells(introw,intcolumn,intnumRows,intnumCols)

合并单元在特别的row和colomn。新的单元将跨越numRows行和numCols列。如果numRows和numCols是少于目前单元跨越的行列数,那么这个方法不起作用。

voidQTextTable::mergeCells(constQTextCursor&cursor)

合并被选择的单元

voidQTextTable::removeColumns(intindex,intcolumns)

voidQTextTable::removeRows(intindex,introws)

voidQTextTable::resize(introws,intcolumns)

重设表格的大小,已包括要求的行列。

QTextCursorQTextTable::rowEnd(constQTextCursor&cursor)const

返回一个光标指向行的结尾。

QTextCursorQTextTable::rowStart(constQTextCursor&cursor)const

intQTextTable::rows()const

voidQTextTable::setFormat(constQTextTableFormat&format)

voidQTextTable::splitCell(introw,intcolumn,intnumRows,intnumCols)

这只适合分开已经跨越多行或列的单元,像是已经被mergeCells()合并的单元。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: