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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Поймать событие resizeEvent  (Прочитано 2746 раз)
opera
Чайник
*
Offline Offline

Сообщений: 93


Просмотр профиля
« : Январь 21, 2018, 15:43 »

Добрый день. Подскажите пожалуйста, как поймать событие resizeEvent для QWidget, когда окно уже уменьшится не может. То есть алгоритм такой:
1. Открывается окно QWidget
2. Берем его за правую сторону и тащим до максимально возможного размера влево(уменьшаем его) отпускаем мышь — тут проблем нет, пока возможно уменьшение окна resizeEvent ловиться
3. Далее пытаемся уменьшит окно еще сильнее, но это невозможно и тут уже сигнал resizeEvent уже не ловится, какое событие ловить в этот момент?
Записан
ssoft
Программист
*****
Online Online

Сообщений: 584


Просмотр профиля
« Ответ #1 : Январь 22, 2018, 08:43 »

QResizeEvent формируется только вследствие изменения размера окна, а не при желании. Когда уже изменение размеров невозможно, событие QResizeEvent уже не формируется.
Посмотрите в сторону QHoverEvent, QMoveEvent. А лучше переопределите метод virtual bool event ( QEvent * e ) и посмотрите все типы событий, которые приходят в вашем случае.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #2 : Январь 22, 2018, 12:05 »

3. Далее пытаемся уменьшит окно еще сильнее, но это невозможно и тут уже сигнал resizeEvent уже не ловится, какое событие ловить в этот момент?
Да, и это нормально (удобно, естественно). Если Вы хотите зарядить какие-то действия типа "сверх-уменьшения" то придется ловить движение мыша. Задумка явно нездоровая
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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