динамически добавлять строки в табличное представление - PullRequest
3 голосов
/ 28 июня 2011

Я хочу иметь табличное представление в своем коде Qt. Он имеет четыре столбца и много строк (не знаю) перед тем, как вручную в табличном представлении Qt, как я могу динамически добавлять строки как

QStandardItemModel model(0,2);

Что делать, чтобы добавлять строки динамически?

1 Ответ

8 голосов
/ 28 июня 2011

для этого есть огромный набор функций,

void    appendColumn ( const QList<QStandardItem *> & items )
void    appendRow ( const QList<QStandardItem *> & items )
void    appendRow ( QStandardItem * item )
void    insertColumn ( int column, const QList<QStandardItem *> & items )
bool    insertColumn ( int column, const QModelIndex & parent = QModelIndex() )
void    insertRow ( int row, const QList<QStandardItem *> & items )
bool    insertRow ( int row, const QModelIndex & parent = QModelIndex() )
void    insertRow ( int row, QStandardItem * item )

посмотрите в qt docs их описание

UPD:

QStandardItemModel m(3,3);
QList<QStandardItem*> newRow;
for (int i=0;i<m.colCount();i++)
{
    QStandardItem* itm = new QStandardItem(QString("data for col %1").arg(i));
    newRow.append(itm);
}
m.append(newRow);

не проверял, но он должен работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...