Название: Перехват события перемещения родителя потомком Отправлено: Dovgon от Октября 23, 2015, 21:32 Использую parent->installEventFilter(this); для перехвата событий родительского окна.
Но перемещение потомка происходит только в последней точки перемещения родительского. Возможно выполить перермещение потомка за родителем по плавно? Название: Re: Перехват события перемещения родителя потомком Отправлено: Igors от Октября 24, 2015, 06:01 Использую parent->installEventFilter(this); для перехвата событий родительского окна. Яснее излагайте. "перехвата событий" - каких событий? "последней точки" - когда мыша отпущена, или как? Ну и наверное "потомок" - тоже отдельное окно. Ловите в фильтре moveEvent - оно приходит Но перемещение потомка происходит только в последней точки перемещения родительского. Возможно выполить перермещение потомка за родителем по плавно? Название: Re: Перехват события перемещения родителя п Отправлено: Dovgon от Октября 24, 2015, 09:47 Есть два окна, нужно что бы при движении одного второе двиголось за ним, при этом описовало всю троекторию движения.
Если использовать installEventFilter и в eventFilter(QObject *watched, QEvent *event) отслеживать события движения окна, то оно приходит одно когда отпускаешь мышку. И второе окно перемещается рывком. И все события происходящие над заголовком окна не прехватываются (перемещения мышки, нажатие на кнопки мышки). Название: Re: Перехват события перемещения родителя потомком Отправлено: Old от Октября 24, 2015, 09:49 Попробуйте включить void QWidget::setMouseTracking(bool enable)
тогда будут приходить все события при перемещении мыши. Название: Re: Перехват события перемещения родителя потомком Отправлено: Dovgon от Октября 24, 2015, 09:58 setMouseTracking не помогло, как только курсор оказывается над заголовком окна события перестают поступать, пробовал его устанавливать qApp->installEventFilter(). тоже не одного сообщения над зоголовком, как черная дыра.
Название: Re: Перехват события перемещения родителя потомком Отправлено: Old от Октября 24, 2015, 10:03 setMouseTracking не помогло, как только курсор оказывается над заголовком окна события перестают поступать, пробовал его устанавливать qApp->installEventFilter(). тоже не одного сообщения над зоголовком, как черная дыра. Так проблема при движении над заголовком? Сейчас приходят все события о перемещении внутри области окна?Название: Re: Перехват события перемещения родителя потомком Отправлено: Dovgon от Октября 24, 2015, 10:05 окно перемещается удержанием его за заголовок. События происходящие над окном приходили и раньше все.
Название: Re: Перехват события перемещения родителя потомком Отправлено: Bepec от Октября 24, 2015, 10:58 Заголовок управляется менеджером рабочего стола ОС. Если хотите, можете сами рисовать заголовок и тогда реагировать сможете в реалтайме.
Хм, вроде в винде при перетаскивании за заголовок основной поток программы останавливается. По крайней мере на ХР такое что то было. |