class QTreeWidgetItem

The QTreeWidgetItem class provides an item for use with the QTreeWidget convenience class. More

Synopsis

Methods

Virtual methods

Note

This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE

Detailed Description

Warning

This section contains snippets that were automatically translated from C++ to Python and may contain errors.

Tree widget items are used to hold rows of information for tree widgets. Rows usually contain several columns of data, each of which can contain a text label and an icon.

The QTreeWidgetItem class is a convenience class that replaces the QListViewItem class in Qt 3. It provides an item for use with the QTreeWidget class.

Items are usually constructed with a parent that is either a QTreeWidget (for top-level items) or a QTreeWidgetItem (for items on lower levels of the tree). For example, the following code constructs a top-level item to represent cities of the world, and adds a entry for Oslo as a child item:

cities = QTreeWidgetItem(treeWidget)
cities.setText(0, tr("Cities"))
osloItem = QTreeWidgetItem(cities)
osloItem.setText(0, tr("Oslo"))
osloItem.setText(1, tr("Yes"))

Items can be added in a particular order by specifying the item they follow when they are constructed:

planets = QTreeWidgetItem(treeWidget, cities)
planets.setText(0, tr("Planets"))

Each column in an item can have its own background brush which is set with the setBackground() function. The current background brush can be found with background() . The text label for each column can be rendered with its own font and brush. These are specified with the setFont() and setForeground() functions, and read with font() and foreground() .

The main difference between top-level items and those in lower levels of the tree is that a top-level item has no parent() . This information can be used to tell the difference between items, and is useful to know when inserting and removing items from the tree. Children of an item can be removed with takeChild() and inserted at a given index in the list of children with the insertChild() function.

By default, items are enabled, selectable, checkable, and can be the source of a drag and drop operation. Each item’s flags can be changed by calling setFlags() with the appropriate value (see Qt::ItemFlags). Checkable items can be checked and unchecked with the setCheckState() function. The corresponding checkState() function indicates whether the item is currently checked.

Subclassing

When subclassing QTreeWidgetItem to provide custom items, it is possible to define new types for them so that they can be distinguished from standard items. The constructors for subclasses that require this feature need to call the base class constructor with a new type value equal to or greater than UserType .

class ItemType

(inherits enum.IntEnum) This enum describes the types that are used to describe tree widget items.

Constant

Description

QTreeWidgetItem.Type

The default type for tree widget items.

QTreeWidgetItem.UserType

The minimum value for custom types. Values below UserType are reserved by Qt.

You can define new user types in QTreeWidgetItem subclasses to ensure that custom items are treated specially; for example, when items are sorted.

See also

type()

class ChildIndicatorPolicy

Constant

Description

QTreeWidgetItem.ShowIndicator

The controls for expanding and collapsing will be shown for this item even if there are no children.

QTreeWidgetItem.DontShowIndicator

The controls for expanding and collapsing will never be shown even if there are children. If the node is forced open the user will not be able to expand or collapse the item.

QTreeWidgetItem.DontShowIndicatorWhenChildless

The controls for expanding and collapsing will be shown if the item contains children.

__init__(other)
Parameters:

otherQTreeWidgetItem

Constructs a copy of other. Note that type() and treeWidget() are not copied.

This function is useful when reimplementing clone() .

See also

data() flags()

__init__([type=QTreeWidgetItem.ItemType.Type])
Parameters:

type – int

Constructs a tree widget item of the specified type. The item must be inserted into a tree widget.

See also

type()

__init__(treeview[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

Constructs a tree widget item of the specified type and appends it to the items in the given parent.

See also

type()

__init__(parent[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

Constructs a tree widget item and append it to the given parent.

See also

type()

__init__(strings[, type=QTreeWidgetItem.ItemType.Type])
Parameters:
  • strings – list of strings

  • type – int

Constructs a tree widget item of the specified type. The item must be inserted into a tree widget. The given list of strings will be set as the item text for each column in the item.

See also

type()

__init__(treeview, after[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

Constructs a tree widget item of the specified type and inserts it into the given parent after the preceding item.

See also

type()

__init__(treeview, strings[, type=QTreeWidgetItem.ItemType.Type])
Parameters:
  • treeviewQTreeWidget

  • strings – list of strings

  • type – int

Constructs a tree widget item of the specified type and appends it to the items in the given parent. The given list of strings will be set as the item text for each column in the item.

See also

type()

__init__(parent, after[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

Constructs a tree widget item of the specified type that is inserted into the parent after the preceding child item.

See also

type()

__init__(parent, strings[, type=QTreeWidgetItem.ItemType.Type])
Parameters:

Constructs a tree widget item and append it to the given parent. The given list of strings will be set as the item text for each column in the item.

See also

type()

addChild(child)
Parameters:

childQTreeWidgetItem

Appends the child item to the list of children.

addChildren(children)
Parameters:

children – .list of QTreeWidgetItem

Appends the given list of children to the item.

background(column)
Parameters:

column – int

Return type:

QBrush

Returns the brush used to render the background of the specified column.

checkState(column)
Parameters:

column – int

Return type:

CheckState

Returns the check state of the label in the given column.

See also

setCheckState() CheckState

child(index)
Parameters:

index – int

Return type:

QTreeWidgetItem

Returns the item at the given index in the list of the item’s children.

See also

parent()

childCount()
Return type:

int

Returns the number of child items.

childIndicatorPolicy()
Return type:

ChildIndicatorPolicy

Returns the item indicator policy. This policy decides when the tree branch expand/collapse indicator is shown.

clone()
Return type:

QTreeWidgetItem

Creates a deep copy of the item and of its children.

columnCount()
Return type:

int

Returns the number of columns in the item.

data(column, role)
Parameters:
  • column – int

  • role – int

Return type:

object

Returns the value for the item’s column and role.

See also

setData()

emitDataChanged()

Causes the model associated with this item to emit a dataChanged() signal for this item.

You normally only need to call this function if you have subclassed QTreeWidgetItem and reimplemented data() and/or setData() .

See also

setData()

flags()
Return type:

Combination of ItemFlag

Returns the flags used to describe the item. These determine whether the item can be checked, edited, and selected.

The default value for flags is Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled.

See also

setFlags()

font(column)
Parameters:

column – int

Return type:

QFont

Returns the font used to render the text in the specified column.

See also

setFont()

foreground(column)
Parameters:

column – int

Return type:

QBrush

Returns the brush used to render the foreground (e.g. text) of the specified column. Setting a default-constructed brush will let the view use the default color from the style.

icon(column)
Parameters:

column – int

Return type:

QIcon

Returns the icon that is displayed in the specified column.

See also

setIcon() iconSize

indexOfChild(child)
Parameters:

childQTreeWidgetItem

Return type:

int

Returns the index of the given child in the item’s list of children.

insertChild(index, child)
Parameters:

Inserts the child item at index in the list of children.

If the child has already been inserted somewhere else it won’t be inserted again.

insertChildren(index, children)
Parameters:
  • index – int

  • children – .list of QTreeWidgetItem

Inserts the given list of children into the list of the item children at index .

Children that have already been inserted somewhere else won’t be inserted.

isDisabled()
Return type:

bool

Returns true if the item is disabled; otherwise returns false.

See also

setFlags()

isExpanded()
Return type:

bool

Returns true if the item is expanded, otherwise returns false.

See also

setExpanded()

isFirstColumnSpanned()
Return type:

bool

Returns true if the item is spanning all the columns in a row; otherwise returns false.

isHidden()
Return type:

bool

Returns true if the item is hidden, otherwise returns false.

See also

setHidden()

isSelected()
Return type:

bool

Returns true if the item is selected, otherwise returns false.

See also

setSelected()

__lt__(other)
Parameters:

otherQTreeWidgetItem

Return type:

bool

Returns true if the text in the item is less than the text in the other item, otherwise returns false.

parent()
Return type:

QTreeWidgetItem

Returns the item’s parent.

See also

child()

read(in)
Parameters:

inQDataStream

Reads the item from stream in. This only reads data into a single item.

See also

write()

removeChild(child)
Parameters:

childQTreeWidgetItem

Removes the given item indicated by child. The removed item will not be deleted.

setBackground(column, brush)
Parameters:
  • column – int

  • brushQBrush

Sets the background brush of the label in the given column to the specified brush. Setting a default-constructed brush will let the view use the default color from the style.

Note

If Qt Style Sheets are used on the same widget as setBackground(), style sheets will take precedence if the settings conflict.

setCheckState(column, state)
Parameters:

Sets the item in the given column check state to be state.

See also

checkState()

setChildIndicatorPolicy(policy)
Parameters:

policyChildIndicatorPolicy

Sets the item indicator policy. This policy decides when the tree branch expand/collapse indicator is shown. The default value is DontShowIndicatorWhenChildless .

setData(column, role, value)
Parameters:
  • column – int

  • role – int

  • value – object

Sets the value for the item’s column and role to the given value.

The role describes the type of data specified by value, and is defined by the Qt::ItemDataRole enum.

Note

The default implementation treats Qt::EditRole and Qt::DisplayRole as referring to the same data.

See also

data()

setDisabled(disabled)
Parameters:

disabled – bool

Disables the item if disabled is true; otherwise enables the item.

setExpanded(expand)
Parameters:

expand – bool

Expands the item if expand is true, otherwise collapses the item.

Warning

The QTreeWidgetItem must be added to the QTreeWidget before calling this function.

See also

isExpanded()

setFirstColumnSpanned(span)
Parameters:

span – bool

Sets the first section to span all columns if span is true; otherwise all item sections are shown.

setFlags(flags)
Parameters:

flags – Combination of ItemFlag

Sets the flags for the item to the given flags. These determine whether the item can be selected or modified. This is often used to disable an item.

See also

flags()

setFont(column, font)
Parameters:
  • column – int

  • fontQFont

Sets the font used to display the text in the given column to the given font.

setForeground(column, brush)
Parameters:
  • column – int

  • brushQBrush

Sets the foreground brush of the label in the given column to the specified brush.

setHidden(hide)
Parameters:

hide – bool

Hides the item if hide is true, otherwise shows the item.

Note

A call to this function has no effect if the item is not currently in a view. In particular, calling setHidden(true) on an item and only then adding it to a view will result in a visible item.

See also

isHidden()

setIcon(column, icon)
Parameters:
  • column – int

  • iconQIcon

Sets the icon to be displayed in the given column to icon.

setSelected(select)
Parameters:

select – bool

Sets the selected state of the item to select.

See also

isSelected()

setSizeHint(column, size)
Parameters:
  • column – int

  • sizeQSize

Sets the size hint for the tree item in the given column to be size. If no size hint is set or size is invalid, the item delegate will compute the size hint based on the item data.

See also

sizeHint()

setStatusTip(column, statusTip)
Parameters:
  • column – int

  • statusTip – str

Sets the status tip for the given column to the given statusTip. QTreeWidget mouse tracking needs to be enabled for this feature to work.

setText(column, text)
Parameters:
  • column – int

  • text – str

Sets the text to be displayed in the given column to the given text.

setTextAlignment(column, alignment)
Parameters:

Sets the text alignment for the label in the given column to the alignment specified.

See also

textAlignment()

setTextAlignment(column, alignment)
Parameters:
setTextAlignment(column, alignment)
Parameters:
  • column – int

  • alignment – int

Note

This function is deprecated.

Use the overload that takes a Qt::Alignment argument.

Sets the text alignment for the label in the given column to the alignment specified.

See also

Alignment

setToolTip(column, toolTip)
Parameters:
  • column – int

  • toolTip – str

Sets the tooltip for the given column to toolTip.

setWhatsThis(column, whatsThis)
Parameters:
  • column – int

  • whatsThis – str

Sets the “What’s This?” help for the given column to whatsThis.

sizeHint(column)
Parameters:

column – int

Return type:

QSize

Returns the size hint set for the tree item in the given column (see QSize).

See also

setSizeHint()

sortChildren(column, order)
Parameters:

Sorts the children of the item using the given order, by the values in the given column.

Note

This function does nothing if the item is not associated with a QTreeWidget .

statusTip(column)
Parameters:

column – int

Return type:

str

Returns the status tip for the contents of the given column.

See also

setStatusTip()

takeChild(index)
Parameters:

index – int

Return type:

QTreeWidgetItem

Removes the item at index and returns it, otherwise return 0.

takeChildren()
Return type:

.list of QTreeWidgetItem

Removes the list of children and returns it, otherwise returns an empty list.

text(column)
Parameters:

column – int

Return type:

str

Returns the text in the specified column.

See also

setText()

textAlignment(column)
Parameters:

column – int

Return type:

int

Returns the text alignment for the label in the given column.

Note

This function returns an int for historical reasons. It will be corrected to return Qt::Alignment in Qt 7.

See also

setTextAlignment() Alignment

toolTip(column)
Parameters:

column – int

Return type:

str

Returns the tool tip for the given column.

See also

setToolTip()

treeWidget()
Return type:

QTreeWidget

Returns the tree widget that contains the item.

type()
Return type:

int

Returns the type passed to the QTreeWidgetItem constructor.

whatsThis(column)
Parameters:

column – int

Return type:

str

Returns the “What’s This?” help for the contents of the given column.

See also

setWhatsThis()

write(out)
Parameters:

outQDataStream

Writes the item to stream out. This only writes data from one single item.

See also

read()