Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: излишняя перерисовка окон в QMdiArea
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt GUI
qtshnik
Имею сложный виджет с тяжелой графикой. Засовываю его в окно QMdiSubWindow. Замечаю, что при перемещении этого окна мышкой происходят жуткие тормоза. Оказывается, что виджет полностью перерисовывается при каждом движении мыши (происходит событие paintEvent, которое вызывается, видимо вызоывми repaint() или update() самим кутэшным ядром, но точно не мной). Пробую сделать этот же тяжелый виджет окном верхнего уровня, и тормозов нет, paintEvent не вызывается.

Вопрос номер раз: это является стандартным поведением QMdiSubWindow?
вопос номер два раза: может, существует какой-нибудь хитрый флажок или еще чего, чтобы такого поведения не было?
Алексей1153
qtshnik,
я с классом не знаком, но вот гляжу в справку и наткнулся на флажок (видать, не зря его ввели) - RubberBandMove. Судя по описанию, с ним перетаскиваться будет пустой прямоугольник, а окно в это время будет стоять на месте и ждать окончания действа

и рядом флажок для ресайзинга с таким же поведением, кстати
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.