Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: kai666_73 от Январь 23, 2012, 13:15



Название: [Решено] Кастомизация QTabBar
Отправлено: kai666_73 от Январь 23, 2012, 13:15
Необходимо отобразить прогресс бар на вкладке.
Отсюда вопрос - существует ли способ отобразить произвольный виджет на вкладке QTabBar-а?


Название: Re: Кастомизация QTabBar
Отправлено: GreatSnake от Январь 23, 2012, 13:18
Код
C++ (Qt)
void QTabBar::setTabButton ( int index, ButtonPosition position, QWidget * widget )


Название: Re: Кастомизация QTabBar
Отправлено: kai666_73 от Январь 23, 2012, 13:25
Пробовал - не вышло. Наверно, метод расчитан не на любой виджет, а только на кнопки.


Название: Re: Кастомизация QTabBar
Отправлено: GreatSnake от Январь 23, 2012, 13:36
Пробовал - не вышло. Наверно, метод расчитан не на любой виджет, а только на кнопки.
Интересно, что я делаю не так, что у меня вышло?
Код
C++ (Qt)
#include <QApplication>
#include <QProgressBar>
#include <QTabWidget>
#include <QTabBar>
 
class TabWidget : public QTabWidget
{
public:
QTabBar* tabBar() { return QTabWidget::tabBar(); }
};
 
int main( int argc, char** argv )
{
QApplication app( argc, argv );
TabWidget tw;
 
tw.addTab( new QWidget(), QString() );
tw.tabBar()->setTabButton( tw.count() - 1, QTabBar::LeftSide, new QProgressBar );
 
tw.show();
 
return app.exec();
}
 


Название: Re: Кастомизация QTabBar
Отправлено: kai666_73 от Январь 23, 2012, 13:51
И правда, работает... Интересно, а с составным виджетом получится? Буду разбираться...


Название: Re: Кастомизация QTabBar
Отправлено: GreatSnake от Январь 23, 2012, 13:59
И правда, работает... Интересно, а с составным виджетом получится? Буду разбираться...
QTabBar-у абсолютно всё-равно какой виджет ему подсунут в качестве кнопки.


Название: Re: [Решено] Кастомизация QTabBar
Отправлено: kai666_73 от Январь 23, 2012, 18:47
Ага, уже убедился. Спасибо.
Моя проблема была в том, что в Layout составного виджета добавлял виджет после вызова функции setTabButton