| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [Qt] QListWidget, Выбор нескольких элементов |
| Автор: lxx 22.9.2010, 15:38 | ||
| Приветствую! Такая проблема: Есть QlistWidget с возможностью выбора нескольких элементов. Чтобы выбрать несколько элементов нужно при выборе зажимать Ctrl. Можно-ли сделать так, чтобы это можно было делать без удерживания Ctrl, то есть нажал на элемент один раз - он выбрался, второй раз - выбор снялся. Пробовал в сигнале itemCliced делать следующее:
Но при клике элемент выделяется и сразу сбрасывается. Еще есть идея при клике как-то программно посылать Qt::ControlModifier, но как это сделать я не знаю. Подскажите что-нибудь... |
| Автор: RedDigger 25.9.2010, 01:13 | ||||||||||
Интересная задачка. Проблема тут состоит в следующем - При установке выбранного элемента в позицию "Включен" или "Выключен" запускается сигнал сного что и дает Ваш результат. Задача - остановить его от второго изменения. Решил следующим образом - *.h
*.cpp In constructor
*.cpp
Надеюсь поможет. |
| Автор: Amp 25.9.2010, 10:01 |
| QAbstractItemView::MultiSelection под описанное должен подойти. |
| Автор: RedDigger 25.9.2010, 13:06 | ||
В том то и дело что при установке его в положение Qt::MultiSelection придется выбирать разные элементы через контрол, как и было описано как проблема которую надо обойти в постановке вопроса. |
| Автор: RedDigger 26.9.2010, 21:29 | ||||
Amp Прости.. Проверил сам.. видимо запарился.. спать надо больше.. lxx Qt::MultiSelection работает именно так как нужно для твоего примера. |