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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QFileSystemModel - дерево каталогов с чекбоксами  (Прочитано 4607 раз)
Endemion1
Гость
« : Июль 18, 2009, 13:57 »

Здравствуйте
Мне нужно отобразить дерево файлов\каталогов с чекбоксами возле каждого элемента. Что я нашел - отнаследоваться от QFileSystemModel, в функции #flags возвратить Qt::ItemIsUserCheckable, и переопределить data() setData() таким образом, чтобы для каждого элемента-узла дерева они сохраняли/считывали флаг bool Checked, таким образом позволяя узнать состояние переключателя. Собственно проблема в хранении этого флага. Логика подсказывает, что обычно такие переменные храняться в структуре элемента, но QFileSystemModel не содержит обычного массива своих элементов. Как я понимаю, нужно переопределить всю реализацию этого контейнера, добавив к нему это поле checked. Может есть способ попроще? Спасибо заранее
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #1 : Июль 18, 2009, 17:53 »

Логика подсказывает, что обычно такие переменные храняться в структуре элемента, но QFileSystemModel не содержит обычного массива своих элементов. Как я понимаю, нужно переопределить всю реализацию этого контейнера, добавив к нему это поле checked. Может есть способ попроще? Спасибо заранее

Прочитай в ассистанте про Qt::ItemDataRole и обрати внимание на Qt::CheckStateRole.

ЗЫ: Qt::ItemDataRole в setData() это 3 параметр; в data() - второй
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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