crossplatform.ru

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

> QStandardModel и сигнал rowsInserted()
Анна
  опции профиля:
сообщение 26.12.2014, 11:12
Сообщение #1


Активный участник
***

Группа: Участник
Сообщений: 276
Регистрация: 22.5.2008
Из: Зеленоград
Пользователь №: 181

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




Репутация:   4  


Столкнулась с таким фактом:
Если QStandardModel использую как таблицу и добавляю ряды непосредственно в саму модель с помощью QStandardModel::appendRow(), то в слоте, присоединённом к сигналу rowsInserted( const QModelIndex & parent, int start, int end) нет возможности добраться до данных, которые вставлены. parent не валидный, его указатель на модель равен нулю. Теоретически можно выловить модель из sender(), но где гарантия, что мой слот подсоединён к сигналу непоспедственно от модели, а не через какого-нибудь посредника?
Кто может посоветовать что-нибудь , как решить проблему доставания данных из этого сигнала?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
lanz
  опции профиля:
сообщение 27.12.2014, 20:10
Сообщение #2


Старейший участник
****

Группа: Участник
Сообщений: 690
Регистрация: 28.12.2012
Пользователь №: 3660

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




Репутация:   8  


Можно сохранять ссылку на модель внутри получателя сигнала. Тем более если есть некие посредники.
Либо как раз использовать посредника, который связан с моделью и выдает сигнал (QAbstractItemModel*, int, int) например.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


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


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




RSS Текстовая версия Сейчас: 29.11.2024, 17:20