Название: Вопрос по dra&drop Отправлено: Павел_F. от Декабрь 18, 2009, 09:35 Есть у меня виджет( назовем его родителем), на нем, в свою очередь, располагаются другие виджеты( пусть будут дети). Где-то в программе берется drag и тащится на этот виджет родитель. Если курсор находится внутри него, но над его детьми то события dragEnterEvent и dropEvent принимают эти самые дети. а хочется чтобы принимал сам родитель, не зависимо где на нем курсор и что за виджеты на нем. Как это можно реализовать?
PS: условно можно представить как таблицу и хочется что бы dragEnterEvent и dropEvent шли в саму таблицу а не в ячейку над которой курсор. Название: Re: Вопрос по dra&drop Отправлено: Dendy от Декабрь 18, 2009, 12:08 Дети будут принимать события, только если у них стоит setAcceptDrops(true). Если же они не должны принимать конкретно этот тип майма - то в dragEnterEvent() они не должны дёргать acceptProposedAction() - тогда событие передаётся родителю.
Название: Re: Вопрос по dra&drop Отправлено: Павел_F. от Декабрь 18, 2009, 13:19 Ага... Сейчас попробую, спасибо.
Название: Re: Вопрос по dra&drop Отправлено: Nimbus от Март 23, 2010, 08:41 Вопрос такой:
Есть у меня виджет, в котором находятся ещё несколько виджетов. На самом родительском виджете я переписал виртуальные методы событий перетаскивания, чтобы на него можно было перетаскивать папки и файлы. Всё гуд, даже если перетаскиваю на его дочерние виджеты, всё равно принимает и это радует. НО... Добавил в главный виджет ещё QWebView. Именно на него почему-то не срабатывает перетаскивание, на виджеты, которые находятся рядом, срабатывает. Вопрос - почему так происходит? Название: Re: Вопрос по dra&drop Отправлено: Akaiten от Март 23, 2010, 17:00 Потому что QWebView сам обрабатывает это событие, и оно не передаётся предку.
|