Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Phuntik от Апрель 21, 2010, 09:43



Название: Вопрос по выводу в нулевой столбец QTableWidget
Отправлено: Phuntik от Апрель 21, 2010, 09:43
Добрый день. Есть такой вопрос. Вот код:

Код:
    size_t size = datas.size();
    for(size_t i = 0; i < size; i++) {
        if(datas[i].IsValid()) {
1.          selectColumn(0);
2.           setItem(i, 0, new QTableWidgetItem(mathDevice.VoltageToString(datas[i].voltage, 0)));
            insertRow(rowCount());
        }
    }

Перед выполнением таблица содержит одну строку с четырьмя столбиками. Всё пустое.
Вопросы:
Во-первых, если убрать строку, помеченную 1, программа аварийно завершается. Почему?
Во-вторых, если в строке 2 будет указан 1, 2 или 3-й столбик, результат будет ожидаемый. А вот в нулевой почему-то выводится не то, что нужно, а чаще всего она остаётся пустой.
Как мне вывести в 0-й столбик то, что надо?
Спасибо.

Вот так я создаю таблицу:
Код:
    clear();
    setRowCount(1);
    setColumnCount(4);
    setRowHeight(0, HEIGHT_ROW);
    QStringList list;
    list.push_back(tr("Время, c"));
    list.push_back(tr("Напряжение, В"));
    list.push_back(tr("Ток, А"));
    list.push_back(tr("Текущее время, с"));
    setHorizontalHeaderLabels(list);
    setRowHeight(0, HEIGHT_ROW);


Название: Re: Вопрос по выводу в нулевой столбец QTableWidget
Отправлено: Пантер от Апрель 21, 2010, 11:30
Ты наследуешься от QTableWidget? Может тогда лучше посмотреть в сторону модель/представление?


Название: Re: Вопрос по выводу в нулевой столбец QTableWidget
Отправлено: Phuntik от Апрель 21, 2010, 12:00
Ты наследуешься от QTableWidget? Может тогда лучше посмотреть в сторону модель/представление?
Наследуюсь. Но это  уже неважно. Похоже, косяк найден. Менял значение в ячейке, а в это время поключенный к cellChanged слот делал свои дела.
Прошу прощение за отнятое время, тему удалить?

Действительно неудобно получилось. Несколько часов потратил. И слот отключал, но видимо, косо.