Russian Qt Forum
Мая 25, 2025, 02:16
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Пользовательский интерфейс (GUI)
>
Как определить размер виджета
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Как определить размер виджета (Прочитано 2772 раз)
trot
Гость
Как определить размер виджета
«
:
Ноября 06, 2011, 14:00 »
Создаю диалог, размер которого определяется размером элементов, которые в свою очередь распахиваются в соответствии со своим содержимым. Все элементы размещены в layout-ах. Каким образом можно определить геометрию (ширину и высоту) диалога, до момента его отрисовки. Это нужно для того, чтобы в зависимости от размера диалога определить (задать) его положение на экране.
Спасибо.
Записан
andrew.k
Гость
Re: Как определить размер виджета
«
Ответ #1 :
Ноября 06, 2011, 14:58 »
Уже в конструкторе геометрая окна должна быть определена.
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Как определить размер виджета
«
Ответ #2 :
Ноября 06, 2011, 15:00 »
trot
никаким, тк любой виджет может быть показан в 3 состояниях - normal, maximized, fullscreen
Записан
andrew.k
Гость
Re: Как определить размер виджета
«
Ответ #3 :
Ноября 06, 2011, 15:03 »
создается то он все равно в одном из состояний. поэтому в конструкторе любого виджета его размеры уже определены.
а вызывыя showMaximized изменяются его размеры и это тоже легко отловить.
И это все до момента отрисовки, что и требуется ТС.
Записан
BRE
Гость
Re: Как определить размер виджета
«
Ответ #4 :
Ноября 06, 2011, 15:30 »
Цитата: andrew.k от Ноября 06, 2011, 15:03
поэтому в конструкторе любого виджета его размеры уже определены.
Нет.
2trot
. Перед визуализацией виджета будет послано событие resizeEvent, вот там уже будет точный размер.
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...