crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

ars
  опции профиля:
сообщение 12.4.2010, 18:50
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 10
Регистрация: 16.2.2010
Пользователь №: 1467

Спасибо сказали: 0 раз(а)




Репутация:   0  


Добрый день!

Не могу понять как обработать событие перемещения виджета. Как следует из документации (и из экспериментирования :) ) moveEvent() посылается только при перемещении виджета относительно родителя. А что если мне нужно позиционировать popup окно (наподобие меню), которое должно изменять положение при перемещении главного окна (естественно при этом виджет, за которым должно следовать popup окно относительно главного окна не движется). Кто-нибудь знает как это сделать? Заранее благодарен.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 12.4.2010, 20:42
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(ars @ 13.4.2010, 0:24) *
Да и кроме того, а если у меня таких родителей несколько?
у виджета не может быть несколько родителей.

Цитата(ars @ 13.4.2010, 0:24) *
я же свой виджет пишу, можно просто event() переопределить в дочернем окне и все
не понял, в каком дочернем окне? во всплывающем списке? а как узнаешь смещение координат главного окна?

Цитата(ars @ 13.4.2010, 0:24) *
Вроде как QComboBox и без этого работает в любой иерархии
сравнение про QComboBox совершенно не понял
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ars
  опции профиля:
сообщение 12.4.2010, 20:52
Сообщение #3


Студент
*

Группа: Новичок
Сообщений: 10
Регистрация: 16.2.2010
Пользователь №: 1467

Спасибо сказали: 0 раз(а)




Репутация:   0  


Несколько родителей -- в смысле не прямых родителей :) Ну например, я открываю ComboBox, после этого могу перемещать тулбар на котором он расположен или главное окно, а выпадающий список этого ComboBox'a всегда следует за самим ComoBox'ом.

По поводу сравнения. Мне нужен виджет, который работает так же как ComboBox, но содержит не текст с иконками, а картинки и некоторый дополнительный функционал. Наследую я от класса QWidget и реализую вручную все необходимые методы. Вопрос в том, как мне добиться такого же поведения моего всплывающего меню, какое у ComboBox я описал в предыдущем абзаце. Обычно это реализуется за счет переопределения в самом меню обработчика события перемещения окна родителя. Какой метод в этом меню при этом вызывается, или какое событие из enum QEvent::Type за это отвечает?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 18.2.2025, 17:16