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

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

Страниц: [1] 2 3   Вниз
  Печать  
Автор Тема: QTreeWidget  (Прочитано 15164 раз)
kadr
Гость
« : Август 19, 2010, 12:29 »

У меня есть пару вопросов:
1. Есть 2 QTreeWidget, в них загружаются все содержимое разных директорий, при входе в директорию там появляется итем с таким содержимым - .., надо что бы эта строка всегда была наверху, не зависимо от сортировки?
2. Имеется кнопка просмотр, при нажатии на которую в блокноте открывается текущий документ, как задать условие, по которому будет определятся в каком поле(QTreeWidget) сейчас стоит активный курсор, одним словом из какого поля нужно открывать файл?
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #1 : Август 19, 2010, 12:36 »

1)
flags QDir::Filters
flags QDir::SortFlags
2) SelectionModel, SelectedIndexes, QFileSystemModel::path(QModelIndex)
Записан
kadr
Гость
« Ответ #2 : Август 19, 2010, 14:47 »

Мне не надо фильтровать и сортировать, надо что бы наряду с другими файлами и папками эти 2 точку (..) были на самом верху, притом в QTreeWidget включена сортировка.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #3 : Август 19, 2010, 14:53 »

блин, мне казалось что это можно указать... А что дает QDir::LocaleAware? попробуй отнаследоваться от модели и переопределить sort
Записан
kadr
Гость
« Ответ #4 : Август 19, 2010, 15:21 »

Как вот это можно указать, мне надо что бы сортировать можно было по нажатию мышкой на заголовке, например по Имени или типу и тд. А эти 2 точку не должны при этом сортироваться, постоянно быть наверху, ну как в тотоле!
Может быть в свойствах QTreeWidget есть возможность выставить, что бы .. были всегда наверху.
« Последнее редактирование: Август 19, 2010, 15:24 от kadr » Записан
kadr
Гость
« Ответ #5 : Август 20, 2010, 07:01 »

2) SelectionModel, SelectedIndexes, QFileSystemModel::path(QModelIndex)
Я может быть не правильно выразился, как определить какой элемент в данный момент имеет фокус, активен.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #6 : Август 20, 2010, 08:28 »

SelectionModel
Записан
kadr
Гость
« Ответ #7 : Август 20, 2010, 09:06 »

SelectionModel
Я никак не врюблюсь как с ним работать, можно маленько поконкретнее.
Да и еще не подскажите, как заставить в QTreeWIdget при нжатии на кнопку, выделение перемещаться на один уровень вниз, то есть у меня выделен один итем, при нажатии на кнопку выделение переходит на другой итем?
« Последнее редактирование: Август 20, 2010, 09:09 от kadr » Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #8 : Август 20, 2010, 09:30 »

эхх
Код:
{
    QItemSelectionModel *selectionModel = view->selectionModel();
    QModelIndexList indexes = selectionModel->selectedIndexes(); // или selectedRows
    foreach(QModelIndex index, indexes) {
        qDebug() << model->filePath(index); // печатаем выделенные файлы
    }
    selectionModel->clear();
    QModelIndex index = model->index("/"); // индекс корня в линупсе
    selectionModel->select(index); // выделен рут
}
Записан
crossly
Гость
« Ответ #9 : Август 20, 2010, 11:35 »

а чем продиктовано использование QTreeWidget??
Записан
kadr
Гость
« Ответ #10 : Август 20, 2010, 12:32 »

а чем продиктовано использование QTreeWidget??
Нужно работать в файловой системой, как в файловом менеджере.
Записан
crossly
Гость
« Ответ #11 : Август 20, 2010, 12:47 »

дык QFileSystemModel + QTreeView избавит от лишнего геморроя...
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #12 : Август 20, 2010, 12:53 »

хех, а слона-то я и не заметил:) думал у него model-based
Записан
kadr
Гость
« Ответ #13 : Август 20, 2010, 13:02 »

дык QFileSystemModel + QTreeView избавит от лишнего геморроя...
А я использую QTreeWidget!
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #14 : Август 20, 2010, 13:29 »

да, 1й строчкой setRootIndex
Записан
Страниц: [1] 2 3   Вверх
  Печать  
 
Перейти в:  


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