Добрый день. Есть такой вопрос. Вот код:
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);