Russian Qt Forum
Сентябрь 29, 2024, 00:23 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Определение размера виджета  (Прочитано 2507 раз)
Crazy Sage
Гость
« : Март 22, 2010, 12:02 »

Ситуация следующая:
Есть главное окно, унаследованное от QMainWindow, в нем есть рабочее поле, сделанное на баз QScrollView, в него загружается некое изображение.
Задача подогнать размер изображения под размер рабочего поля до показа главного окна.
Однако при попытке это сделать до вызова dlgMain->showMaximized() height() рабочего поля возвращает меньшее значение, чем получается в итоге и изображение масштабируется неправильно.
Если сделать dlgMain->showMaximized(); dlgMain->hide(); и после этого определять размеры - все ок, но кратковременное появление главного окна не радует. Что можно сделать для корректного определения размера рабочего поля? вариант dlgMain->setWindowState(dlgMain->windowState()|Qt::WindowMaximized); dlgMain->polish(); не помогает.
Qt 3.3
« Последнее редактирование: Март 22, 2010, 12:25 от Crazy Sage » Записан
alexman
Гость
« Ответ #1 : Март 22, 2010, 12:13 »

virtual void QWidget::resizeEvent ( QResizeEvent * event )?
Записан
Crazy Sage
Гость
« Ответ #2 : Март 22, 2010, 12:25 »

Так это при каждом изменении размера будет срабатывать, а мне надо только при первом показе. На showEvent() тоже не успевает размер выставиться.
И да, опять забыл, Qt 3.3
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.142 секунд. Запросов: 21.