QTreeView Class Reference
[QtGui module]
该QTreeView则类提供了一个默认的模型/视图实现树形视图中。More...
继承QAbstractItemView。
通过继承QHelpContentWidget和QTreeWidget。
Methods
-
__init__ (self, QWidget parent = None)
-
bool allColumnsShowFocus (self)
-
int autoExpandDelay (self)
-
collapse (self, QModelIndex index)
-
collapseAll (self)
-
int columnAt (self, int x)
-
columnCountChanged (self, int oldCount, int newCount)
-
columnMoved (self)
-
columnResized (self, int column, int oldSize, int newSize)
-
int columnViewportPosition (self, int column)
-
int columnWidth (self, int column)
-
currentChanged (self, QModelIndex current, QModelIndex previous)
-
dataChanged (self, QModelIndex topLeft, QModelIndex bottomRight)
-
dragMoveEvent (self, QDragMoveEvent event)
-
drawBranches (self, QPainter painter, QRect rect, QModelIndex index)
-
drawRow (self, QPainter painter, QStyleOptionViewItem options, QModelIndex index)
-
drawTree (self, QPainter painter, QRegion region)
-
expand (self, QModelIndex index)
-
expandAll (self)
-
bool expandsOnDoubleClick (self)
-
expandToDepth (self, int depth)
-
QHeaderView header (self)
-
hideColumn (self, int column)
-
int horizontalOffset (self)
-
horizontalScrollbarAction (self, int action)
-
int indentation (self)
-
QModelIndex indexAbove (self, QModelIndex index)
-
QModelIndex indexAt (self, QPoint p)
-
QModelIndex indexBelow (self, QModelIndex index)
-
int indexRowSizeHint (self, QModelIndex index)
-
bool isAnimated (self)
-
bool isColumnHidden (self, int column)
-
bool isExpanded (self, QModelIndex index)
-
bool isFirstColumnSpanned (self, int row, QModelIndex parent)
-
bool isHeaderHidden (self)
-
bool isIndexHidden (self, QModelIndex index)
-
bool isRowHidden (self, int row, QModelIndex parent)
-
bool isSortingEnabled (self)
-
bool itemsExpandable (self)
-
keyboardSearch (self, QString search)
-
keyPressEvent (self, QKeyEvent event)
-
mouseDoubleClickEvent (self, QMouseEvent e)
-
mouseMoveEvent (self, QMouseEvent event)
-
mousePressEvent (self, QMouseEvent e)
-
mouseReleaseEvent (self, QMouseEvent event)
-
QModelIndex moveCursor (self, QAbstractItemView.CursorAction cursorAction, Qt.KeyboardModifiers modifiers)
-
paintEvent (self, QPaintEvent e)
-
reexpand (self)
-
reset (self)
-
resizeColumnToContents (self, int column)
-
bool rootIsDecorated (self)
-
int rowHeight (self, QModelIndex index)
-
rowsAboutToBeRemoved (self, QModelIndex parent, int start, int end)
-
rowsInserted (self, QModelIndex parent, int start, int end)
-
rowsRemoved (self, QModelIndex parent, int first, int last)
-
scrollContentsBy (self, int dx, int dy)
-
scrollTo (self, QModelIndex index, QAbstractItemView.ScrollHint hint = QAbstractItemView.EnsureVisible)
-
selectAll (self)
-
list-of-QModelIndex selectedIndexes (self)
-
selectionChanged (self, QItemSelection selected, QItemSelection deselected)
-
setAllColumnsShowFocus (self, bool enable)
-
setAnimated (self, bool enable)
-
setAutoExpandDelay (self, int delay)
-
setColumnHidden (self, int column, bool hide)
-
setColumnWidth (self, int column, int width)
-
setExpanded (self, QModelIndex index, bool expand)
-
setExpandsOnDoubleClick (self, bool enable)
-
setFirstColumnSpanned (self, int row, QModelIndex parent, bool span)
-
setHeader (self, QHeaderView header)
-
setHeaderHidden (self, bool hide)
-
setIndentation (self, int i)
-
setItemsExpandable (self, bool enable)
-
setModel (self, QAbstractItemModel model)
-
setRootIndex (self, QModelIndex index)
-
setRootIsDecorated (self, bool show)
-
setRowHidden (self, int row, QModelIndex parent, bool hide)
-
setSelection (self, QRect rect, QItemSelectionModel.SelectionFlags command)
-
setSelectionModel (self, QItemSelectionModel selectionModel)
-
setSortingEnabled (self, bool enable)
-
setUniformRowHeights (self, bool uniform)
-
setWordWrap (self, bool on)
-
showColumn (self, int column)
-
int sizeHintForColumn (self, int column)
-
sortByColumn (self, int column)
-
sortByColumn (self, int column, Qt.SortOrder order)
-
timerEvent (self, QTimerEvent event)
-
bool uniformRowHeights (self)
-
updateGeometries (self)
-
int verticalOffset (self)
-
bool viewportEvent (self, QEvent event)
-
QRect visualRect (self, QModelIndex index)
-
QRegion visualRegionForSelection (self, QItemSelection selection)
-
bool wordWrap (self)
Qt Signals
Detailed Description
该QTreeView则类提供了一个默认的模型/视图实现树形视图中。
一个QTreeView则实现了从模型项目的树表示。这个类是用来提供以前由提供的标准分层列表QListView类,但使用Qt的模型/视图结构中提供的更灵活的方法。
在QTreeView则类是一个Model/View Classes并且是Qt的一部分model/view framework。
QTreeView则实现由定义的接口QAbstractItemView类以允许其显示由从派生模型提供数据QAbstractItemModel类。
它是简单的构造一个树形视图中显示从模型数据。在下面的例子中,目录中的内容是由供给QFileSystemModel并显示为一个树:
QFileSystemModel *model = new QFileSystemModel;
model->setRootPath(QDir.currentPath());
QTreeView *tree = new QTreeView(splitter);
tree->setModel(model);
该模型/视图结构保证了树视图中的内容被更新模型的变化。
有孩子的项目可以在一个扩展的(孩子是可见的)或折叠(隐藏子项)的状态。在这种状态下改变了collapsed()或expanded()信号被发射的相关项的模型索引。
在用来表示层次结构级别的缩进量由控制indentation属性。
在树视图标头使用的构造QHeaderView类,并且可以使用被隐藏header()->hide()。请注意,每个头被配置成与它的stretchLastSection属性设置为True ,以确保该视图不会浪费任何分配给它,它的头部空间。如果这个值被设置为True ,则此属性将复盖调整大小模式标头中的最后一节设置。
Key Bindings
QTreeView则支持一组键绑定,使用户能够在浏览视图,并与项目的内容进行交互的:
| Key |
Action |
| Up |
Moves the cursor to the item in the same column on the previous
row. If the parent of the current item has no more rows to navigate
to, the cursor moves to the relevant item in the last row of the
sibling that precedes the parent. |
| Down |
Moves the cursor to the item in the same column on the next
row. If the parent of the current item has no more rows to navigate
to, the cursor moves to the relevant item in the first row of the
sibling that follows the parent. |
| Left |
Hides the children of the current item (if present) by
collapsing a branch. |
| Minus |
Same as LeftArrow. |
| Right |
Reveals the children of the current item (if present) by
expanding a branch. |
| Plus |
Same as RightArrow. |
| Asterisk |
Expands all children of the current item (if present). |
| PageUp |
Moves the cursor up one page. |
| PageDown |
Moves the cursor down one page. |
| Home |
Moves the cursor to an item in the same column of the first row
of the first top-level item in the model. |
| End |
Moves the cursor to an item in the same column of the last row
of the last top-level item in the model. |
| F2 |
In editable models, this opens the current item for editing.
The Escape key can be used to cancel the editing process and revert
any changes to the data displayed. |
Improving Performance
它可以给出关于它正在处理,以便显示大量项目时,以改善其性能的数据的视图的提示。可以采取一种方法对于旨在与高度相等显示项目的观点是设置uniformRowHeights属性设置为True 。
Method Documentation
QTreeView.__init__ (self, QWidget parent = None)
该parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。
构造一个树视图与parent来表示模型的数据。使用setModel()来设定模型。
See also QAbstractItemModel。
bool QTreeView.allColumnsShowFocus (self)
int QTreeView.autoExpandDelay (self)
QTreeView.collapse (self, QModelIndex index)
这种方法也是一个Qt槽与C + +的签名void collapse(const QModelIndex&)。
折叠由指定的模型项目index。
See also collapsed( ) 。
QTreeView.collapseAll (self)
这种方法也是一个Qt槽与C + +的签名void collapseAll()。
折叠所有展开的项目。
这个函数中引入了Qt 4.2中。
See also expandAll( )expand( )collapse()和setExpanded( ) 。
int QTreeView.columnAt (self, int x)
返回在树视图中的列,其标题复盖x坐标给出。
QTreeView.columnCountChanged (self, int oldCount, int newCount)
这种方法也是一个Qt槽与C + +的签名void columnCountChanged(int,int)。
通知树视图中的树视图中的列数已经从oldCount至newCount。
QTreeView.columnMoved (self)
这种方法也是一个Qt槽与C + +的签名void columnMoved()。
这个槽被调用,每当一列已被移动。
QTreeView.columnResized (self, int column, int oldSize, int newSize)
这种方法也是一个Qt槽与C + +的签名void columnResized(int,int,int)。
这个函数被调用时column的大小在头改变。oldSize和newSize给先前的大小和新的像素大小。
See also setColumnWidth( ) 。
int QTreeView.columnViewportPosition (self, int column)
返回的水平位置column在视口中。
int QTreeView.columnWidth (self, int column)
返回的宽度column。
See also resizeColumnToContents()和setColumnWidth( ) 。
QTreeView.currentChanged (self, QModelIndex current, QModelIndex previous)
从重新实现QAbstractItemView.currentChanged( ) 。
QTreeView.dataChanged (self, QModelIndex topLeft, QModelIndex bottomRight)
这种方法也是一个Qt槽与C + +的签名void dataChanged(const QModelIndex&,const QModelIndex&)。
从重新实现QAbstractItemView.dataChanged( ) 。
QTreeView.dragMoveEvent (self, QDragMoveEvent event)
从重新实现QWidget.dragMoveEvent( ) 。
QTreeView.drawBranches (self, QPainter painter, QRect rect, QModelIndex index)
绘制树枝在树视图中的同一行的模型项目index使用painter给出。该分支绘制由指定的矩形rect。
在绘制包含模型项树视图中的列index使用painter给出。该option控制如何显示该项目。
See also setAlternatingRowColors( ) 。
QTreeView.drawTree (self, QPainter painter, QRegion region)
绘制树的相交给定的部分region使用指定的painter。
这个函数中引入了Qt 4.2中。
See also paintEvent( ) 。
QTreeView.expand (self, QModelIndex index)
这种方法也是一个Qt槽与C + +的签名void expand(const QModelIndex&)。
扩大由指定的模型项目index。
See also expanded( ) 。
QTreeView.expandAll (self)
这种方法也是一个Qt槽与C + +的签名void expandAll()。
展开所有扩展项目。
警告:如果模型中包含了大量的项目,此功能需要一定的时间来执行。
这个函数中引入了Qt 4.2中。
See also collapseAll( )expand( )collapse()和setExpanded( ) 。
bool QTreeView.expandsOnDoubleClick (self)
QTreeView.expandToDepth (self, int depth)
这种方法也是一个Qt槽与C + +的签名void expandToDepth(int)。
展开所有的项目扩展到给定depth。
此功能被引入Qt的4.3 。
See also expandAll( )collapseAll( )expand( )collapse()和setExpanded( ) 。
QHeaderView QTreeView.header (self)
返回树状视图的标题。
See also setHeader()和QAbstractItemModel.headerData( ) 。
QTreeView.hideColumn (self, int column)
这种方法也是一个Qt槽与C + +的签名void hideColumn(int)。
隐藏column给出。
Note:此功能只应调用该模型已被初始化后,如认为需要知道为了隐藏列数column。
See also showColumn()和setColumnHidden( ) 。
int QTreeView.horizontalOffset (self)
从重新实现QAbstractItemView.horizontalOffset( ) 。
返回水平的树形视图中的项目所抵销。
需要注意的是树视图使用水平标题部分的位置来确定的列在视图中的位置。
See also verticalOffset( ) 。
QTreeView.horizontalScrollbarAction (self, int action)
int QTreeView.indentation (self)
返回上述项目的模型索引index。
从重新实现QAbstractItemView.indexAt( ) 。
返回下面的项的模型索引index。
int QTreeView.indexRowSizeHint (self, QModelIndex index)
返回尺寸暗示由指定的行index。
See also sizeHintForColumn()和uniformRowHeights( ) 。
bool QTreeView.isAnimated (self)
bool QTreeView.isColumnHidden (self, int column)
返回True如果column被隐藏,否则返回False 。
See also hideColumn()和isRowHidden( ) 。
bool QTreeView.isExpanded (self, QModelIndex index)
返回True如果模型项目index为扩大;否则返回False。
See also expand( )expanded()和setExpanded( ) 。
bool QTreeView.isFirstColumnSpanned (self, int row, QModelIndex parent)
返回True如果在给定的第一列中的项row的parent是跨越所有的列,否则返回False 。
此功能被引入Qt的4.3 。
See also setFirstColumnSpanned( ) 。
bool QTreeView.isHeaderHidden (self)
bool QTreeView.isIndexHidden (self, QModelIndex index)
从重新实现QAbstractItemView.isIndexHidden( ) 。
bool QTreeView.isRowHidden (self, int row, QModelIndex parent)
返回True如果该项目在给定row的parent被隐藏,否则返回False 。
See also setRowHidden()和isColumnHidden( ) 。
bool QTreeView.isSortingEnabled (self)
bool QTreeView.itemsExpandable (self)
QTreeView.keyboardSearch (self, QString search)
从重新实现QAbstractItemView.keyboardSearch( ) 。
QTreeView.keyPressEvent (self, QKeyEvent event)
从重新实现QWidget.keyPressEvent( ) 。
QTreeView.mouseDoubleClickEvent (self, QMouseEvent e)
从重新实现QWidget.mouseDoubleClickEvent( ) 。
QTreeView.mouseMoveEvent (self, QMouseEvent event)
从重新实现QWidget.mouseMoveEvent( ) 。
QTreeView.mousePressEvent (self, QMouseEvent e)
从重新实现QWidget.mousePressEvent( ) 。
QTreeView.mouseReleaseEvent (self, QMouseEvent event)
从重新实现QWidget.mouseReleaseEvent( ) 。
从重新实现QAbstractItemView.moveCursor( ) 。
移动光标在所描述的方式cursorAction使用由按键提供的信息modifiers。
QTreeView.paintEvent (self, QPaintEvent e)
从重新实现QWidget.paintEvent( ) 。
QTreeView.reexpand (self)
这种方法也是一个Qt槽与C + +的签名void reexpand()。
QTreeView.reset (self)
从重新实现QAbstractItemView.reset( ) 。
QTreeView.resizeColumnToContents (self, int column)
这种方法也是一个Qt槽与C + +的签名void resizeColumnToContents(int)。
在调整大小column提供给它的内容的大小。
See also columnWidth()和setColumnWidth( ) 。
bool QTreeView.rootIsDecorated (self)
int QTreeView.rowHeight (self, QModelIndex index)
返回该行的由给定的表示的高度index。
此功能被引入Qt的4.3 。
See also indexRowSizeHint( ) 。
QTreeView.rowsAboutToBeRemoved (self, QModelIndex parent, int start, int end)
从重新实现QAbstractItemView.rowsAboutToBeRemoved( ) 。
通知认为,从行start排在end行所包含的是关于从给定的删除parent模型项目。
QTreeView.rowsInserted (self, QModelIndex parent, int start, int end)
从重新实现QAbstractItemView.rowsInserted( ) 。
通知认为,从行start排在end行包已被插入到parent模型项目。
QTreeView.rowsRemoved (self, QModelIndex parent, int first, int last)
这种方法也是一个Qt槽与C + +的签名void rowsRemoved(const QModelIndex&,int,int)。
通知认为,从行start排在end行包被从给定的删除parent模型项目。
这个函数是Qt 4.1中引入。
QTreeView.scrollContentsBy (self, int dx, int dy)
从重新实现QAbstractScrollArea.scrollContentsBy( ) 。
由(滚动树视图中的内容dx,dy) 。
从重新实现QAbstractItemView.scrollTo( ) 。
滚动树视图中的内容,直到给定的模型项目index是可见的。该hint参数指定更精确而该项目应位于操作之后。如果任何模型项的父母都崩溃了,他们将扩大,以确保模型项目是可见的。
QTreeView.selectAll (self)
这种方法也是一个Qt槽与C + +的签名void selectAll()。
从重新实现QAbstractItemView.selectAll( ) 。
list-of-QModelIndex QTreeView.selectedIndexes (self)
从重新实现QAbstractItemView.selectedIndexes( ) 。
QTreeView.selectionChanged (self, QItemSelection selected, QItemSelection deselected)
从重新实现QAbstractItemView.selectionChanged( ) 。
QTreeView.setAllColumnsShowFocus (self, bool enable)
QTreeView.setAnimated (self, bool enable)
QTreeView.setAutoExpandDelay (self, int delay)
QTreeView.setColumnHidden (self, int column, bool hide)
If hide是真实的column是隐藏的,否则,column示。
See also isColumnHidden( )hideColumn()和setRowHidden( ) 。
QTreeView.setColumnWidth (self, int column, int width)
设定的给定的宽度column到width规定。
这个函数中引入了Qt 4.2中。
See also columnWidth()和resizeColumnToContents( ) 。
QTreeView.setExpanded (self, QModelIndex index, bool expand)
设置项转交index要么崩溃或膨胀,这取决于的值expanded。
See also expanded( )expand()和isExpanded( ) 。
QTreeView.setExpandsOnDoubleClick (self, bool enable)
QTreeView.setFirstColumnSpanned (self, int row, QModelIndex parent, bool span)
If span是真正的产品中的第一列row用给定的parent设置为跨越所有列,否则,所有的项目row示。
此功能被引入Qt的4.3 。
See also isFirstColumnSpanned( ) 。
QTreeView.setHeader (self, QHeaderView header)
该header说法有它的所有权转移给Qt的。
设置树视图的标题,给定header。
该视图取得所有权在给定header并删除它,当一个新的头被设置。
See also QAbstractItemModel.headerData( ) 。
QTreeView.setHeaderHidden (self, bool hide)
QTreeView.setIndentation (self, int i)
QTreeView.setItemsExpandable (self, bool enable)
从重新实现QAbstractItemView.setModel( ) 。
QTreeView.setRootIndex (self, QModelIndex index)
从重新实现QAbstractItemView.setRootIndex( ) 。
QTreeView.setRootIsDecorated (self, bool show)
QTreeView.setRowHidden (self, int row, QModelIndex parent, bool hide)
If hide是真实的row用给定的parent是隐藏的,否则,row示。
See also isRowHidden()和setColumnHidden( ) 。
从重新实现QAbstractItemView.setSelection( ) 。
适用的选择command在项目或由矩形触摸时,rect。
See also selectionCommand( ) 。
QTreeView.setSelectionModel (self, QItemSelectionModel selectionModel)
从重新实现QAbstractItemView.setSelectionModel( ) 。
QTreeView.setSortingEnabled (self, bool enable)
QTreeView.setUniformRowHeights (self, bool uniform)
QTreeView.setWordWrap (self, bool on)
QTreeView.showColumn (self, int column)
这种方法也是一个Qt槽与C + +的签名void showColumn(int)。
显示了给定的column在树视图中。
See also hideColumn()和setColumnHidden( ) 。
int QTreeView.sizeHintForColumn (self, int column)
从重新实现QAbstractItemView.sizeHintForColumn( ) 。
返回尺寸暗示的column的宽度或-1 ,如果没有模型。
如果你需要一个给定列的宽度设置为一个固定值,调用QHeaderView.resizeSection( )在视图的标题。
如果在子类中重新实现这个功能,请注意您返回值时只使用resizeColumnToContents()被调用。在这种情况下,如果一个更大的列宽,需要通过两种视图的页眉或项目委讬,该宽度将被代替使用。
See also QWidget.sizeHint和header( ) 。
QTreeView.sortByColumn (self, int column)
这种方法也是一个Qt槽与C + +的签名void sortByColumn(int)。
设定模型向上通过在给定的值进行排序column和order。
column可能是-1 ,在这种情况下,不排序指示器将显示与该模型将回到它的自然,未排序的顺序。请注意,并非所有型号都支持这一点,甚至可能会崩溃在这种情况下。
这个函数中引入了Qt 4.2中。
See also sortingEnabled。
QTreeView.sortByColumn (self, int column, Qt.SortOrder order)
QTreeView.timerEvent (self, QTimerEvent event)
从重新实现QObject.timerEvent( ) 。
bool QTreeView.uniformRowHeights (self)
QTreeView.updateGeometries (self)
从重新实现QAbstractItemView.updateGeometries( ) 。
int QTreeView.verticalOffset (self)
从重新实现QAbstractItemView.verticalOffset( ) 。
返回垂直的树视图中项目的偏移。
See also horizontalOffset( ) 。
bool QTreeView.viewportEvent (self, QEvent event)
从重新实现QAbstractScrollArea.viewportEvent( ) 。
QRect QTreeView.visualRect (self, QModelIndex index)
从重新实现QAbstractItemView.visualRect( ) 。
返回矩形上通过了该项目所佔用的视index。如果索引不可见或隐藏明确,返回的矩形是无效的。
QRegion QTreeView.visualRegionForSelection (self, QItemSelection selection)
从重新实现QAbstractItemView.visualRegionForSelection( ) 。
从在给定的项目的视口返回矩形selection。
由于4.7 ,返回的区域仅包含矩形相交(或计入)的视口。
bool QTreeView.wordWrap (self)
Qt Signal Documentation
void collapsed (const QModelIndex&)
这是该信号的默认超载。
当指定的项目,该信号被发射index已展开。
void expanded (const QModelIndex&)
这是该信号的默认超载。
当指定的项目,该信号被发射index已展开。
See also setExpanded( ) 。