У меня проблемы с QTableWidget. Я пытаюсь получить данные из QTableWidget, когда пользователь изменил ячейку. Так что я использую
QObject::connect(ui->tableWidget, SIGNAL(cellChanged(int,int)), this, SLOT(checkPoints(int,int)));
Вот код контрольных точек
void MainWindow::checkPoints(int x, int y)
{
QTableWidgetItem* item = ui->tableWidget->item(x,(1-y));
if(!item || item->text().isEmpty())
{
}
else
{
ajouterPoint(x);
}
}
Я получаю segFault, когда вызываю item-> text () и мое приложение дает сбой. Я проверил x = 0 и 1-y = 1. Я уже проверял несколько сообщений о подобных проблемах, и, похоже, это связано с фокусом. Но я действительно не знаю, что там делать. Спасибо за помощь.
if(!item && item->text().isEmpty())
. А почему вы используете1-y
, а неy
? - person vahancho   schedule 06.03.2015if(!item && item->text().isEmpty()
сделает доступ к недопустимому указателю. Это проверит, является ли элемент нулевым, и если это так, он попытается получить доступ к членуtext
. - person thuga   schedule 06.03.2015