Добрый вечер!
По учёбе решил написать проектик, но возникла проблема.
Есть объект QTableWidget, который динамически создаётся во время выполнения программы следующим образом:
1. В секции
private заголовочного файла mainwindow.h объявляю указатель:
QTableWidget *EnterData;
2. В конструкторе создаётся объект:
EnterData = new QTableWidget;
Изначально EnterData имеет размер 2х2:
1 строка - имена
2 строка значения
По-умолчанию имена должны задаваться индексом значения, то есть выполняется:
QTableWidgetItem *Item;
for(int i=0;i<CountColumn;i++) {
Item = new QTableWidgetItem(QString::number(i+1));
EnterData->SetItem(0,i, Item);
}
Но проблема в том, что таблица должна менять количество колонок. Вызывается слот, который выполняет:
...
EnterData->SetColumnCount(CountColumn);
QTableWidgetItem *Item;
for(int i=0;i<CountColumn;i++) {
if(EnterData->itemAt(0,i)==0) // Пустая ячейка
{
Item = new QTableWidgetItem(QString::number(i+1));
EnterData->setItem(0,i, Item);
}
}
Вот тут то и начинаются проблемы, а именно:
EnterData->itemAt
(0,i) всегда возвращает ячейку [0,0].
Собственно, где мои кривые руки не так что делают?
Заранее спасибо за ответ!
PS, код писал прямо тут, так что за синтаксические ошибки не ручаюсь, но структура та же.