Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: XpycT от Июль 28, 2009, 08:27



Название: Увеличение высоты виджета
Отправлено: XpycT от Июль 28, 2009, 08:27
Всем привет. Хочу добавить  в виджет (наследник от QTextEdit)возможность увеличения/уменьшение высоты поля, но проблема состоит в том, что layout'ы главного окна игнорируют это событие. В результате поле "заезжает" на нижние виджеты и за предел самого окна (скрин в аттаче). Изменение высоты в виджете через :
Код
C++ (Qt)
void BBCode::changeZoom(QAction *a){
 if(a==zoomIn){
     setGeometry(geometry().x(),geometry().y(),geometry().width(),geometry().height()+200);
 }else if(a==zoomOut){
     setGeometry(geometry().x(),geometry().y(),geometry().width(),geometry().height()-200);
 }
   //emit zoomChanged();
}
Подскажите как мне правильно обновить лайаут главного окна  :(


Название: Re: Увеличение высоты виджета
Отправлено: majatu от Июль 28, 2009, 09:41
мне кажется, что стоило бы поставить скролл справа, чем увеличивать само поле. Возможно у тебя лейатуты для самой формы неправильно сделаны. Попробуй менять минимальную высоту и апдейтить саму форму, тк она, видимо, не знает о том, что размер поля изменился.