QListWidget¶
The QListWidget
class provides an item-based list widget. More…
Synopsis¶
Functions¶
def
addItem
(item)def
addItem
(label)def
addItems
(labels)def
closePersistentEditor
(item)def
count
()def
currentItem
()def
currentRow
()def
editItem
(item)def
findItems
(text, flags)def
indexFromItem
(item)def
insertItem
(row, item)def
insertItem
(row, label)def
insertItems
(row, labels)def
isPersistentEditorOpen
(item)def
isSortingEnabled
()def
item
(row)def
itemAt
(p)def
itemAt
(x, y)def
itemFromIndex
(index)def
itemWidget
(item)def
items
(data)def
openPersistentEditor
(item)def
removeItemWidget
(item)def
row
(item)def
selectedItems
()def
setCurrentItem
(item)def
setCurrentItem
(item, command)def
setCurrentRow
(row)def
setCurrentRow
(row, command)def
setItemWidget
(item, widget)def
setSortingEnabled
(enable)def
sortItems
([order=Qt.AscendingOrder])def
takeItem
(row)def
visualItemRect
(item)
Virtual functions¶
def
dropMimeData
(index, data, action)def
mimeData
(items)def
mimeTypes
()def
supportedDropActions
()
Slots¶
def
clear
()def
scrollToItem
(item[, hint=QAbstractItemView.ScrollHint.EnsureVisible])
Signals¶
def
currentItemChanged
(current, previous)def
currentRowChanged
(currentRow)def
currentTextChanged
(currentText)def
itemActivated
(item)def
itemChanged
(item)def
itemClicked
(item)def
itemDoubleClicked
(item)def
itemEntered
(item)def
itemPressed
(item)def
itemSelectionChanged
()
Detailed Description¶
QListWidget
is a convenience class that provides a list view similar to the one supplied by QListView
, but with a classic item-based interface for adding and removing items. QListWidget
uses an internal model to manage each QListWidgetItem
in the list.
For a more flexible list view widget, use the QListView
class with a standard model.
List widgets are constructed in the same way as other widgets:
listWidget = QListWidget(self)
The selectionMode()
of a list widget determines how many of the items in the list can be selected at the same time, and whether complex selections of items can be created. This can be set with the setSelectionMode()
function.
There are two ways to add items to the list: they can be constructed with the list widget as their parent widget, or they can be constructed with no parent widget and added to the list later. If a list widget already exists when the items are constructed, the first method is easier to use:
QListWidgetItem(tr("Oak"), listWidget) QListWidgetItem(tr("Fir"), listWidget) QListWidgetItem(tr("Pine"), listWidget)
If you need to insert a new item into the list at a particular position, then it should be constructed without a parent widget. The insertItem()
function should then be used to place it within the list. The list widget will take ownership of the item.
newItem = QListWidgetItem() newItem.setText(itemText) listWidget.insertItem(row, newItem)
For multiple items, insertItems()
can be used instead. The number of items in the list is found with the count()
function. To remove items from the list, use takeItem()
.
The current item in the list can be found with currentItem()
, and changed with setCurrentItem()
. The user can also change the current item by navigating with the keyboard or clicking on a different item. When the current item changes, the currentItemChanged()
signal is emitted with the new current item and the item that was previously current.
- class PySide6.QtWidgets.QListWidget([parent=None])¶
- Parameters
parent –
PySide6.QtWidgets.QWidget
Constructs an empty QListWidget
with the given parent
.
- PySide6.QtWidgets.QListWidget.addItem(label)¶
- Parameters
label – str
Inserts an item with the text label
at the end of the list widget.
- PySide6.QtWidgets.QListWidget.addItem(item)
- Parameters
Inserts the item
at the end of the list widget.
Warning
A QListWidgetItem
can only be added to a QListWidget
once. Adding the same QListWidgetItem
multiple times to a QListWidget
will result in undefined behavior.
See also
- PySide6.QtWidgets.QListWidget.addItems(labels)¶
- Parameters
labels – list of strings
Inserts items with the text labels
at the end of the list widget.
See also
- PySide6.QtWidgets.QListWidget.clear()¶
Removes all items and selections in the view.
Warning
All items will be permanently deleted.
- PySide6.QtWidgets.QListWidget.closePersistentEditor(item)¶
- Parameters
Closes the persistent editor for the given item
.
- PySide6.QtWidgets.QListWidget.count()¶
- Return type
int
This property holds the number of items in the list including any hidden items..
- PySide6.QtWidgets.QListWidget.currentItem()¶
- Return type
Returns the current item.
See also
- PySide6.QtWidgets.QListWidget.currentItemChanged(current, previous)¶
- Parameters
current –
PySide6.QtWidgets.QListWidgetItem
previous –
PySide6.QtWidgets.QListWidgetItem
- PySide6.QtWidgets.QListWidget.currentRow()¶
- Return type
int
This property holds the row of the current item..
Depending on the current selection mode, the row may also be selected.
- PySide6.QtWidgets.QListWidget.currentRowChanged(currentRow)¶
- Parameters
currentRow – int
- PySide6.QtWidgets.QListWidget.currentTextChanged(currentText)¶
- Parameters
currentText – str
- PySide6.QtWidgets.QListWidget.dropMimeData(index, data, action)¶
- Parameters
index – int
data –
PySide6.QtCore.QMimeData
action –
DropAction
- Return type
bool
Handles data
supplied by an external drag and drop operation that ended with the given action
in the given index
. Returns true
if data
and action
can be handled by the model; otherwise returns false
.
See also
- PySide6.QtWidgets.QListWidget.editItem(item)¶
- Parameters
Starts editing the item
if it is editable.
- PySide6.QtWidgets.QListWidget.findItems(text, flags)¶
- Parameters
text – str
flags –
MatchFlags
- Return type
Finds items with the text that matches the string text
using the given flags
.
- PySide6.QtWidgets.QListWidget.indexFromItem(item)¶
- Parameters
- Return type
Returns the QModelIndex
associated with the given item
.
Note
In Qt versions prior to 5.10, this function took a non-const
item
.
- PySide6.QtWidgets.QListWidget.insertItem(row, item)¶
- Parameters
row – int
Inserts the item
at the position in the list given by row
.
See also
- PySide6.QtWidgets.QListWidget.insertItem(row, label)
- Parameters
row – int
label – str
Inserts an item with the text label
in the list widget at the position given by row
.
See also
- PySide6.QtWidgets.QListWidget.insertItems(row, labels)¶
- Parameters
row – int
labels – list of strings
Inserts items from the list of labels
into the list, starting at the given row
.
See also
- PySide6.QtWidgets.QListWidget.isPersistentEditorOpen(item)¶
- Parameters
- Return type
bool
Returns whether a persistent editor is open for item item
.
- PySide6.QtWidgets.QListWidget.isSortingEnabled()¶
- Return type
bool
This property holds whether sorting is enabled.
If this property is true
, sorting is enabled for the list; if the property is false, sorting is not enabled.
The default value is false.
- PySide6.QtWidgets.QListWidget.item(row)¶
- Parameters
row – int
- Return type
Returns the item that occupies the given row
in the list if one has been set; otherwise returns None
.
See also
- PySide6.QtWidgets.QListWidget.itemActivated(item)¶
- Parameters
- PySide6.QtWidgets.QListWidget.itemAt(p)¶
- Parameters
- Return type
Returns a pointer to the item at the coordinates p
. The coordinates are relative to the list widget’s viewport()
.
- PySide6.QtWidgets.QListWidget.itemAt(x, y)
- Parameters
x – int
y – int
- Return type
This is an overloaded function.
Returns a pointer to the item at the coordinates (x
, y
). The coordinates are relative to the list widget’s viewport()
.
- PySide6.QtWidgets.QListWidget.itemChanged(item)¶
- Parameters
- PySide6.QtWidgets.QListWidget.itemClicked(item)¶
- Parameters
- PySide6.QtWidgets.QListWidget.itemDoubleClicked(item)¶
- Parameters
- PySide6.QtWidgets.QListWidget.itemEntered(item)¶
- Parameters
- PySide6.QtWidgets.QListWidget.itemFromIndex(index)¶
- Parameters
index –
PySide6.QtCore.QModelIndex
- Return type
Returns a pointer to the QListWidgetItem
associated with the given index
.
- PySide6.QtWidgets.QListWidget.itemPressed(item)¶
- Parameters
- PySide6.QtWidgets.QListWidget.itemSelectionChanged()¶
- PySide6.QtWidgets.QListWidget.itemWidget(item)¶
- Parameters
- Return type
Returns the widget displayed in the given item
.
See also
- PySide6.QtWidgets.QListWidget.items(data)¶
- Parameters
data –
PySide6.QtCore.QMimeData
- Return type
Returns a list of pointers to the items contained in the data
object. If the object was not created by a QListWidget
in the same process, the list is empty.
- PySide6.QtWidgets.QListWidget.mimeData(items)¶
- Parameters
items –
- Return type
Returns an object that contains a serialized description of the specified items
. The format used to describe the items is obtained from the mimeTypes()
function.
If the list of items is empty, None
is returned instead of a serialized empty list.
- PySide6.QtWidgets.QListWidget.mimeTypes()¶
- Return type
list of strings
Returns a list of MIME types that can be used to describe a list of listwidget items.
See also
- PySide6.QtWidgets.QListWidget.openPersistentEditor(item)¶
- Parameters
Opens an editor for the given item
. The editor remains open after editing.
- PySide6.QtWidgets.QListWidget.removeItemWidget(item)¶
- Parameters
Removes the widget set on the given item
.
To remove an item (row) from the list entirely, either delete the item or use takeItem()
.
See also
- PySide6.QtWidgets.QListWidget.row(item)¶
- Parameters
- Return type
int
Returns the row containing the given item
.
See also
- PySide6.QtWidgets.QListWidget.scrollToItem(item[, hint=QAbstractItemView.ScrollHint.EnsureVisible])¶
- Parameters
hint –
ScrollHint
Scrolls the view if necessary to ensure that the item
is visible.
hint
specifies where the item
should be located after the operation.
- PySide6.QtWidgets.QListWidget.selectedItems()¶
- Return type
Returns a list of all selected items in the list widget.
- PySide6.QtWidgets.QListWidget.setCurrentItem(item, command)¶
- Parameters
command –
SelectionFlags
Set the current item to item
, using the given command
.
- PySide6.QtWidgets.QListWidget.setCurrentItem(item)
- Parameters
Sets the current item to item
.
Unless the selection mode is NoSelection
, the item is also selected.
See also
- PySide6.QtWidgets.QListWidget.setCurrentRow(row)¶
- Parameters
row – int
This property holds the row of the current item..
Depending on the current selection mode, the row may also be selected.
- PySide6.QtWidgets.QListWidget.setCurrentRow(row, command)
- Parameters
row – int
command –
SelectionFlags
Sets the current row to be the given row
, using the given command
,
- PySide6.QtWidgets.QListWidget.setItemWidget(item, widget)¶
- Parameters
widget –
PySide6.QtWidgets.QWidget
Sets the widget
to be displayed in the given item
.
This function should only be used to display static content in the place of a list widget item. If you want to display custom dynamic content or implement a custom editor widget, use QListView
and subclass QStyledItemDelegate
instead.
- PySide6.QtWidgets.QListWidget.setSortingEnabled(enable)¶
- Parameters
enable – bool
This property holds whether sorting is enabled.
If this property is true
, sorting is enabled for the list; if the property is false, sorting is not enabled.
The default value is false.
Sorts all the items in the list widget according to the specified order
.
- PySide6.QtWidgets.QListWidget.supportedDropActions()¶
- Return type
DropActions
Returns the drop actions supported by this view.
See also
DropActions
- PySide6.QtWidgets.QListWidget.takeItem(row)¶
- Parameters
row – int
- Return type
Removes and returns the item from the given row
in the list widget; otherwise returns None
.
Items removed from a list widget will not be managed by Qt, and will need to be deleted manually.
See also
- PySide6.QtWidgets.QListWidget.visualItemRect(item)¶
- Parameters
- Return type
Returns the rectangle on the viewport occupied by the item at item
.
© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.