У меня здесь очень странная проблема. Моя программа SegmentationFault
когда я устанавливаю элемент на стол. Вот мой код
Заголовок:
class Program : public QMainWindow {
Q_OBJECT
public:
Program();
private:
QTableWidget *table;
private slots:
void newSlot();
}
Cpp файл:
Program::Program() : QMainWindow() {
....
....
....
....
table = new QTableWidget();
table->setRowCount( 0 );
table->setColumnCount( 2 );
....
....
....
}
void Program::newSlot() {
....
....
....
table->insertRow( table->rowCount() );
table->setItem( table->rowCount() - 1, 0, new QTableWidgetItem( "something" ) );
table->setItem( table->rowCount() - 1, 1, new QTableWidgetItem( "something" ) );
....
....
....
}
Дело в том, когда программа достигает table->setItem( ... )
в newSlot()
Я получаю ошибку сегментации. Я где-то допустил какую-то глупую ошибку, которая вызывает этот беспорядок? «Потому что я использовал точно такой же код, где без проблем.
Вы должны указать количество столбцов:
table->setColumnCount( 2 );
сделать
table->setItem( table->rowCount() - 1, 0, new QTableWidgetItem( "something" ) );
...
Других решений пока нет …