Найти - Пользователи
Полная версия: как получить индекс выделенной строки в таблице?
Начало » GUI » как получить индекс выделенной строки в таблице?
1
reychal
По нажатию на кнопку необходимо удалить строку в таблице БД и визуально в виджете. Как это лучше всего сделать? Перепробовала все возможные варианты по удалению, но так поняла, что проблема в отсутствии индекса строки.Получить его не получается. Нашла пример со слотом, но у меня не работает:
self.connect(butok2, QtCore.SIGNAL('clicked(QModelIndex)'), self.delrowtab) # функция вообще не стартует
self.connect(butok2, QtCore.SIGNAL('clicked(QtCore.QModelIndex)'), self.delrowtab) # Ругается: TypeError: C++ type 'QtCore.QModelIndex' is not supported as a slot argument type
Скорее всего из-за разницы в версиях питона. Для 3 версии пока не удается сделать.
Андрей Светлов
Нет разницы в версиях. И опять ничего не понятно.
Что это за кнопка butok2, которая имеет событие clicked(QModelIndex*) ?
Почему индекс нельзя взять стандартными методами QTableView - текущую строку, список выделенных и так далее?
reychal
Спасибо за подсказку, все получилось. Сразу не смогла сообразить как использовать selectedIndexes() и currentIndex().
Андрей Светлов
Использовать .selectedIndexes() не совсем правильно. По крайней мере в С++ это protected member.
По идее нужно вызывать .selectionModel(), а потом уже спрашивать у QItemSelectionModel всё что нужно.
Пытон
И как у этой заразы спрашивать-то??? Пол-интернета облазил, чтоб он прокис!
Пытон
Ну и ладно! Сам разобрался.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB