Добрый день, форумчане.
Создал класс унаследованный от QWidget и переопределил метод sizeHint(). Размер возвращается правильный, но размер по высоте ячейки не изменяется, только по ширине подстраивается. В чем может быть проблема?
Вот так задаю содержимое и размер, где
m_item это
QLabel:
void QStatusItem::setContent(const QString& name)
{
QSize size_item;
if(m_role == QIconRole)
{
size_item = m_item->pixmap()->size();
m_item->setPixmap(QPixmap(name));
}
else
{
QFont font = m_item->font();
QFontMetrics fm(font);
int length = fm.width(name)*1.2;
size_item = QSize(length, fm.height()*1.2);
m_item->setAlignment(Qt::AlignCenter);
m_item->setText(name);
}
setFixedSize(size_item);
}
Этот виджет потом устанавливается в ячейку QTableWidget через setCellWidget();