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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: [Qt 4.1.4] QComboBox + QTreeView - Можно ли?  (Прочитано 4681 раз)
Tonal
Гость
« : Сентябрь 21, 2006, 13:56 »

Иногда сильно удобно в выпадающем списке видеть несколько колонок или дерево.

Можно ли в выпадающем списке QComboBox показать QTreeView?

Вроде есть функция QComboBox::setView, и она работает, но добиться показа 2х колонок у меня не получилось.  Грустный
Записан
itan
Гость
« Ответ #1 : Сентябрь 21, 2006, 14:16 »

Можно вот так:

Код:
QDirModel *model = new QDirModel;
    QTreeView *tree = new QTreeView;
    tree->setModel(model);
    tree->setMinimumHeight(TREE_VIEW_HEIGHT);

    QComboBox cb;
    cb.setView(tree);
    cb.setModel(model);

    cb.show();


Но это не решит всех проблем.  Выпадающий список почему-то не коректируется по высоте и приходится высталять высоту самому, например TREE_VIEW_HEIGHT = 200. И еще при нажатии на "+" весь список схлопывается (в принципе можно обойти переопределив eventFilter).

Вообще-то это баг:
http://www.trolltech.com/developer/task-tracker/index_html?method=entry&id=87744
Записан
Tonal
Гость
« Ответ #2 : Сентябрь 21, 2006, 16:20 »

Щастье, заработало!

Правда, почему то не работает setSelectionBehavior и header().resizeSection...
Но, может быть это какие-то косяки PyQt...
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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