crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> QSqlTAbleModel+QTableView, удаление
iris22
  опции профиля:
сообщение 4.10.2009, 15:25
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 4.10.2009
Пользователь №: 1137

Спасибо сказали: 0 раз(а)




Репутация:   0  


Подскажите, пожалуйста, как удалять данные из таблицы.
Пробовала делать так:
void Window::deleteRecord(){
    int row;
    QItemSelectionModel *selectModel;
    QModelIndexList indexes;
    QModelIndex index;

    selectModel = view->selectionModel();
    indexes = selectModel->selectedIndexes();

    foreach(index, indexes)
    {
        QString str;
        if (!model->removeRows(row,1))
        {
            str = model->lastError().text();
            qDebug()<<str;
            break;
        }
        else
        {
            view->setRowHidden(row,true);
        }
    }
}

но ничего не выходит. Вылетает на строчке:
foreach(index, indexes)
Причина редактирования: используй кнопку (тег) code
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
MoPDoBoPoT
  опции профиля:
сообщение 4.10.2009, 15:47
Сообщение #2


Участник
**

Группа: Участник
Сообщений: 172
Регистрация: 7.5.2009
Из: Москва
Пользователь №: 738

Спасибо сказали: 44 раз(а)




Репутация:   9  


Первое, что бросается в глаза, это то, что переменная row нигде не инициализируется.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
iris22
  опции профиля:
сообщение 4.10.2009, 16:07
Сообщение #3


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 4.10.2009
Пользователь №: 1137

Спасибо сказали: 0 раз(а)




Репутация:   0  


row = index.row();
но вылетает то он раньше
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 5.10.2009, 1:22
Сообщение #4


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(iris22 @ 4.10.2009, 19:25) *
Вылетает на строчке:
foreach(index, indexes)
а как ты это определил?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
iris22
  опции профиля:
сообщение 5.10.2009, 9:24
Сообщение #5


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 4.10.2009
Пользователь №: 1137

Спасибо сказали: 0 раз(а)




Репутация:   0  


прошлась пошагово
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 5.10.2009, 15:21
Сообщение #6


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


попробуй всё тело цикла foreach закоментировать, может с ним что-то не так (с ключевым словом)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
iris22
  опции профиля:
сообщение 5.10.2009, 21:19
Сообщение #7


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 4.10.2009
Пользователь №: 1137

Спасибо сказали: 0 раз(а)




Репутация:   0  


закоментила. все равно вылетает,на предыдущей строчке.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 6.10.2009, 4:40
Сообщение #8


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


iris22, у тебя нет такой строчки в pro-файле: CONFIG += no_keywords ?
попробуй воспользоватся Q_FOREACH
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 30.9.2020, 19:54