En esta página

QStringListModel Class

La clase QStringListModel proporciona un modelo que suministra cadenas a las vistas. Más...

Cabecera: #include <QStringListModel>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Hereda: QAbstractListModel
Heredado por:

QHelpIndexModel

Funciones Públicas

QStringListModel(QObject *parent = nullptr)
QStringListModel(const QStringList &strings, QObject *parent = nullptr)
void setStringList(const QStringList &strings)
QStringList stringList() const

Funciones públicas reimplementadas

(since 6.0) virtual bool clearItemData(const QModelIndex &index) override
virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override
virtual Qt::ItemFlags flags(const QModelIndex &index) const override
virtual bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()) override
virtual QMap<int, QVariant> itemData(const QModelIndex &index) const override
virtual bool moveRows(const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destinationParent, int destinationChild) override
virtual bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()) override
virtual int rowCount(const QModelIndex &parent = QModelIndex()) const override
virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override
virtual bool setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles) override
virtual QModelIndex sibling(int row, int column, const QModelIndex &idx) const override
virtual void sort(int column, Qt::SortOrder order = Qt::AscendingOrder) override
virtual Qt::DropActions supportedDropActions() const override

Descripción Detallada

QStringListModel es un modelo editable que se puede utilizar para casos sencillos en los que necesites mostrar un número de cadenas en un widget de vista, como un QListView o un QComboBox.

El modelo proporciona todas las funciones estándar de un modelo editable, representando los datos de la lista de cadenas como un modelo con una columna y un número de filas igual al número de elementos de la lista.

Los índices del modelo correspondientes a los elementos se obtienen con la función index(), y los indicadores de elemento se obtienen con flags(). Los datos de los elementos se leen con la función data() y se escriben con setData(). El número de filas (y el número de elementos de la lista de cadenas) se puede averiguar con la función rowCount().

El modelo puede construirse con una lista de cadenas existente, o las cadenas pueden establecerse posteriormente con la función de conveniencia setStringList(). Las cadenas también pueden insertarse de la forma habitual con la función insertRows(), y eliminarse con removeRows(). El contenido de la lista de cadenas puede recuperarse con la función stringList().

Un ejemplo de uso de QStringListModel:

    QStringListModel *model = new QStringListModel();
    QStringList list;
    list << "a" << "b" << "c";
    model->setStringList(list);

Ver también QAbstractListModel, QAbstractItemModel, y Clases Modelo.

Documentación de las funciones miembro

[explicit] QStringListModel::QStringListModel(QObject *parent = nullptr)

Construye un modelo de lista de cadenas con la dirección parent.

[explicit] QStringListModel::QStringListModel(const QStringList &strings, QObject *parent = nullptr)

Construye un modelo de lista de cadenas que contiene el strings especificado con el parent dado.

[override virtual, since 6.0] bool QStringListModel::clearItemData(const QModelIndex &index)

Reimplementa: QAbstractItemModel::clearItemData(const QModelIndex &index).

Esta función se introdujo en Qt 6.0.

[override virtual] QVariant QStringListModel::data(const QModelIndex &index, int role = Qt::DisplayRole) const

Reimplementa: QAbstractItemModel::data(const QModelIndex &index, int rol) const.

Devuelve datos para el role especificado, del elemento con el index dado.

Si la vista solicita un índice inválido, se devuelve una variante inválida.

Véase también setData().

[override virtual] Qt::ItemFlags QStringListModel::flags(const QModelIndex &index) const

Reimplementa: QAbstractListModel::flags(const QModelIndex &index) const.

Devuelve las banderas para el elemento con el index dado.

Los items validos son enabled, selectable, editable, drag enabled y drop enabled.

Ver también QAbstractItemModel::flags().

[override virtual] bool QStringListModel::insertRows(int row, int count, const QModelIndex &parent = QModelIndex())

Reimplementa: QAbstractItemModel::insertRows(int fila, int cuenta, const QModelIndex &parent).

Inserta count filas en el modelo, comenzando en el row dado.

El índice parent de las filas es opcional y sólo se utiliza por coherencia con QAbstractItemModel. Por defecto, se especifica un índice nulo, indicando que las filas se insertan en el nivel superior del modelo.

Devuelve true si la inserción se ha realizado correctamente.

Véase también QAbstractItemModel::insertRows().

[override virtual] QMap<int, QVariant> QStringListModel::itemData(const QModelIndex &index) const

Reimplementa: QAbstractItemModel::itemData(const QModelIndex &index) const.

Véase también setItemData().

[override virtual] bool QStringListModel::moveRows(const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destinationParent, int destinationChild)

Reimplementa: QAbstractItemModel::moveRows(const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destinationParent, int destinationChild).

[override virtual] bool QStringListModel::removeRows(int row, int count, const QModelIndex &parent = QModelIndex())

Reimplementa: QAbstractItemModel::removeRows(int fila, int cuenta, const QModelIndex &parent).

Elimina count filas del modelo, comenzando en el row dado.

El índice parent de las filas es opcional y sólo se utiliza por coherencia con QAbstractItemModel. Por defecto, se especifica un índice nulo, indicando que las filas se eliminan en el nivel superior del modelo.

Devuelve true si la eliminación de filas se ha realizado correctamente.

Véase también QAbstractItemModel::removeRows().

[override virtual] int QStringListModel::rowCount(const QModelIndex &parent = QModelIndex()) const

Reimplementa: QAbstractItemModel::rowCount(const QModelIndex &parent) const.

Devuelve el número de filas del modelo. Este valor corresponde al número de elementos de la lista interna de filas del modelo.

El argumento opcional parent se utiliza en la mayoría de los modelos para especificar el padre de las filas a contar. Dado que se trata de una lista, si se especifica un padre válido, el resultado será siempre 0.

Véase también insertRows(), removeRows() y QAbstractItemModel::rowCount().

[override virtual] bool QStringListModel::setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole)

Reimplementa: QAbstractItemModel::setData(const QModelIndex &index, const QVariant &value, int role).

Establece los datos para el role especificado en el elemento con el index dado en el modelo, al value proporcionado.

La señal dataChanged() es emitida si el ítem es cambiado. Devuelve true después de emitir la señal dataChanged().

Véase también Qt::ItemDataRole y data().

[override virtual] bool QStringListModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles)

Reimplementa: QAbstractItemModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles).

Si roles contiene tanto Qt::DisplayRole como Qt::EditRole, este último tendrá prioridad.

Véase también itemData().

void QStringListModel::setStringList(const QStringList &strings)

Establece la lista de cadenas interna del modelo en strings. El modelo notificará a cualquier vista adjunta que sus datos subyacentes han cambiado.

Véase también stringList() y dataChanged().

[override virtual] QModelIndex QStringListModel::sibling(int row, int column, const QModelIndex &idx) const

Reimplementa: QAbstractListModel::sibling(int fila, int columna, const QModelIndex &idx) const.

[override virtual] void QStringListModel::sort(int column, Qt::SortOrder order = Qt::AscendingOrder)

Reimplementa: QAbstractItemModel::sort(int columna, Qt::SortOrder orden).

QStringList QStringListModel::stringList() const

Devuelve la lista de cadenas utilizada por el modelo para almacenar datos.

Véase también setStringList().

[override virtual] Qt::DropActions QStringListModel::supportedDropActions() const

Reimplementa: QAbstractItemModel::supportedDropActions() const.

© 2026 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.