Перейти к содержанию
    

Програмирование GUI в Qt.

14 hours ago, gridinp said:

на больших объёмах надо делать QTableView+модель, миллионы строк не тормозят

а что значит модель? я сделал так

void sys::ParamLoadToTable(QTableWidget *table, int rows)
{
    table->setRowCount(rows);

    for (int i = 0; i < rows; i++)
    {
        auto box = new QCheckBox();
        box->setCheckState(Qt::Unchecked);

        table->setCellWidget(i, 3, box);

        QTableWidgetItem  * item1 = new QTableWidgetItem();
        table->setItem(i, 1, item1);

        QTableWidgetItem  * item2 = new QTableWidgetItem();
        table->setItem(i, 2, item2);

        item1->setText(param_list[i].name);
        item2->setText(param_list[i].value);
    }
}

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 hours ago, jenya7 said:

а что значит модель? я сделал так

 

В QTableWidget, там уже сидит готовая модель и эта модель все данные в себе хранит, а если вы возмёте QTableView, то для неё можно написать свою модель на базе QAbstractTableModel, QTableView будет запрашивать у модели данные только для тех колонок/столбцов, которые видны на экране

Это всё описано в книге "Qt 4: программирование ..." Жасмин Бланшет, в главе 10

Изменено пользователем gridinp

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...