Russian Qt Forum
Ноябрь 22, 2024, 23:00 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: removeRow и обновление индекса  (Прочитано 3144 раз)
BuRn
Гость
« : Август 02, 2015, 17:12 »

Добрый день! Допустим я удаляю 1 элемент, у которого был индекс 0, удаляю так:
Код:
    Q_UNUSED(parent);
    beginRemoveRows(QModelIndex(), row, row);
    _contacts.removeAt(row);
    endRemoveRows();
    return true;
Обновятся ли автоматом индексы элементов? Т.е. станет ли элемент с индексом 1 элементом с индексом 0.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #1 : Август 02, 2015, 18:04 »

Непонятно. Если вы имеете виду, обновятся ли сохраненные объекты QModelIndex, то нет, для этого нужны QPersistentModelIndex. Если вы имеете ввиду что-то другое, то мой ответ - хз.
Записан
BuRn
Гость
« Ответ #2 : Август 02, 2015, 18:15 »

Непонятно. Если вы имеете виду, обновятся ли сохраненные объекты QModelIndex, то нет, для этого нужны QPersistentModelIndex. Если вы имеете ввиду что-то другое, то мой ответ - хз.
Поясню, я биндюсь на индекс (index) в qml. На ==0, так вот, когда только модель построилась все хорошо. Как только я удаляю 0 элемент из модели, мое условие перестает работать(index==0), что намекает на то, что элемента с индексом 0 не существует, т.е. элемент с индексом 1 не стал элементом с индексом 0, мне не понятно, либо я что-то делаю не так и не правильно удаляю, либо надо послать какой-то доп сигнал что бы обновить эти индексы .
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #3 : Август 02, 2015, 21:15 »

Ну вы уточняйте что имеете дело с qml. Я с ним дела не имел, поэтому как там модели вкорячиваются, не шарю.
Записан
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« Ответ #4 : Август 03, 2015, 10:28 »

смотрите сигнал rowsRemoved...
если вы храните экземпляры QModelIndex то тут я думаю что автоматом они не инедксируются.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.224 секунд. Запросов: 23.