Название: [Решено]Компоновка. Не получается задать рекомендуемый размер виджета. Отправлено: Blackwanderer от Февраль 10, 2011, 19:30 Добрый вечер!
Столкнулся со следующей проблемой: есть QGridLayout, в нем два виджета. (http://www.ljplus.ru/img4/p/v/pvantonov/111.png) Виджет, выделенный синей рамочкой, - наследник QGLWidget, обрамленный в QFrame (позиция (0,1) в лайоуте). Для QFrame установлена политика размера (QSizePolicy::Expanding, QSizePolicy::Expanding). Виджет, выделенный красной рамочкой (позиция (1,1) в лайоуте) - самописный, отрисовывается с помощью QPainter. Проблема именно с ним. Сейчас для него искусственно задано Код: m_X->setMinimumHeight(35); (http://www.ljplus.ru/img4/p/v/pvantonov/222.png) В классе виджета есть следующие функции: Код: QSize QAxis::sizeHint() Поэтому, если я правильно все понимаю, при установке политики (QSizePolicy::Minimum, QSizePolicy::Minimum) размер виджета не может быть меньше, чем 35 пикселей по горизонтали. Однако этого не происходит. Высота виджета, похоже, выставляется в 0. Подскажите, пожалуйста, в каком направлении копать. Название: Re: Компоновка. Не получается задать рекомендуемый размер виджета. Отправлено: Fat-Zer от Февраль 10, 2011, 19:43 а чем не устраивает "m_X->setMinimumHeight(35);"? это можно в конструктор вашего виджета прописать...
Название: Re: Компоновка. Не получается задать рекомендуемый размер виджета. Отправлено: Blackwanderer от Февраль 10, 2011, 19:48 а чем не устраивает "m_X->setMinimumHeight(35);"? это можно в конструктор вашего виджета прописать... Сейчас оно так и работает, но идеологически я считаю это не правильным.Название: Re: [Решено]Компоновка. Не получается задать рекомендуемый размер виджета. Отправлено: Blackwanderer от Февраль 10, 2011, 19:55 Нашел корень проблемы. Функции должны быть объявлены как константные:
QSize QAxis::sizeHint() const { return QSize(50,35); } QSize QAxis::minimumSizeHint() const { return QSize(50,35); } Название: Re: [Решено]Компоновка. Не получается задать рекомендуемый размер виджета. Отправлено: kirill от Февраль 11, 2011, 09:32 Вот же ж рисуночек пля
|