Совсем запутался с обработкой выделения строк в QTableView... соединяю сигнал изменения текущего item'a:
connect(ui.table->selectionModel(), SIGNAL(currentRowChanged(QModelIndex,QModelIndex)), this, SLOT(onRowChange(QModelIndex,QModelIndex)), Qt::QueuedConnection);
в слоте получаю кол-во выделенных строк так:
int cntSelRow = ui.table->selectionModel()->selectedRows().size()
В итоге если допустим в таблице 5 строк, я выделяю вместе 2,3,4 строки ( cntSelRow = 3
), а затем выделяю одну 5ю строку, то cntSelRow = 1
, НО! Если я выделю не 5ю строку а допустим 3ю, то cntSelRow = 3
, почему так? Почему selectionModel()->selectedRows не успевает изменится?
Все я понял, проблема в том что модель сначала посылает сигнал currentRowChanged() когда модель еще не обработала изменения выделения, а только потом selectionChanged().
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
При определении функции с пустым телом, как правильнее написать её код и зависит ли от этого "логика" самой функции? Если разницы нет, то есть...
Изучая новый стандарт C++, натолкнулся на нововведение «шаблоны переменных»
Всем приветДовольно много учил язык c++ и работать в консольке уже поднадоело и хочется начать реализовывать небольшие проекты (работать...