Добрый вечер!
Столкнулся со следующей проблемой: есть QGridLayout, в нем два виджета.
Виджет, выделенный синей рамочкой, - наследник QGLWidget, обрамленный в QFrame (позиция (0,1) в лайоуте). Для QFrame установлена политика размера (QSizePolicy::Expanding, QSizePolicy::Expanding). Виджет, выделенный красной рамочкой (позиция (1,1) в лайоуте) - самописный, отрисовывается с помощью QPainter. Проблема именно с ним. Сейчас для него искусственно задано
m_X->setMinimumHeight(35);
Если убрать эту искусственную фиксацию размера, виджет не виден при любых задаваемых политиках размера.
В классе виджета есть следующие функции:
QSize QAxis::sizeHint()
{
return QSize(50,35);
}
QSize QAxis::minimumSizeHint()
{
return QSize(50,35);
}
Поэтому, если я правильно все понимаю, при установке политики (QSizePolicy::Minimum, QSizePolicy::Minimum) размер виджета не может быть меньше, чем 35 пикселей по горизонтали. Однако этого не происходит. Высота виджета, похоже, выставляется в 0. Подскажите, пожалуйста, в каком направлении копать.