Всем привет!
Необходимо сделать так, чтобы размер вкладки сжимался по ширине содержимого( т.е. текста вкладки )
У QTabBar есть виртуальный метод virtual QSize tabSizeHint ( int index ) const
переопределяю так
QSize TabBar::tabSizeHint( int indx ) const
{
QTextOption option( Qt::AlignJustify | Qt::AlignHCenter );
option.setWrapMode ( QTextOption::WordWrap );
QPainter painter;
QString text = tabText( indx );
QRectF rect1 = tabRect( indx );
QRectF bounding;
bounding = painter.boundingRect( rect1, text, option );
QRect rect = bounding.toRect();
QSize s( rect.width(), rect.height());
return s;
}
Как-то сложно. Не пробовали QFontMetrics?
return fontMetrics().boundingRect( tabText(indx) ).size();
return fontMetrics().boundingRect( tabText(indx) ).size();
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)