crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> В QTabBar сделать все вкладки невыбранными
tp4
  опции профиля:
сообщение 6.7.2011, 10:15
Сообщение #11


Студент
*

Группа: Участник
Сообщений: 32
Регистрация: 1.10.2009
Пользователь №: 1128

Спасибо сказали: 1 раз(а)




Репутация:   0  


Цитата(ilyabvt @ 5.7.2011, 19:51) *
QTabBar::tab:first {
max-width: 0px;
}


Спасибо большое. Пожалуй это то, что нужно. Но возникли некоторые проблемы:

QApplication a(argc, argv);

    QTabBar tabBar;
    tabBar.addTab("");
    tabBar.addTab("1");
    tabBar.addTab("2");
    tabBar.show();

    QTabWidget tabWgt;
    tabWgt.addTab(new QTreeWidget,"");
    tabWgt.addTab(new QTreeWidget,"1");
    tabWgt.addTab(new QTreeWidget,"2");
    tabWgt.show();

    a.setStyleSheet(    "QTabBar::tab:first {"
                        "  max-width: 0px;"
                        "}"
                    );

    return a.exec();


Вот что получилось:


Почему-то стили применились только к таббару в составе QTableWidget, но не к одинокому QTabBar'у. В чем может быть проблема?


Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ilyabvt
  опции профиля:
сообщение 6.7.2011, 20:37
Сообщение #12


Активный участник
***

Группа: Участник
Сообщений: 297
Регистрация: 23.6.2011
Пользователь №: 2765

Спасибо сказали: 45 раз(а)




Репутация:   3  


Дело в том что окно имеет определенную минимальную ширину меньше которой нельзя сжать стоит добавить еще 2 таба и применять стиль не ко всему приложению а к конкретному виджету и проблема почти решена.
QTabBar tabBar;
    tabBar.addTab("");
    tabBar.addTab("1");
    tabBar.addTab("2");
    tabBar.addTab("3");
    tabBar.addTab("4");
    tabBar.addTab("5");
    tabBar.setStyleSheet(    "QTabBar::tab:first {"
                        "  max-width: 0px;"
                        "}"
                        );
    tabBar.show();


Почти потому что при изменении размеров QTabBar изменяются размеры табов включая тот которому это запрещено. Вот хз отчего это. Может проще свой таббар написать? Тебе от него сильно большая функциональность нужна?

Ну или как вариант поставить такой стиль что бы выбранная вкладка выглядела также как не выбранная. Что-нибудь типа:
QTabBar::tab {
   background-color: rgb(255, 255, 255);
   border: 2px solid blue;
   padding: 4px;
}

И ставить такой стиль, когда нужно будет поставить состояние "не выбрано ничего". Когда нужно выбрать вкладку можно будет вернуть стиль на такой что б выбранная вкладка как то выделялась.
P.S. В стилях не силен, но можно сделать достаточно красиво.
P.P.S. А по хорошему мне очень любопытно какого фига первый таб менял свой размер...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V  < 1 2
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.12.2024, 13:12