![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 05.12.2012
Сообщений: 67
|
![]()
Доброго времени суток.
Столкнулся с любопытной проблемой при реализации перетаскивания: Есть QTableWidget. Соответственно, на нём простая таблица с текстом. Ставлю флаг setDragEnabled(true) и получаю возможность вытаскивать элемент. Всё прекрасно. Таблица лежит на виджете. Сам этот виджет расположен в QMdiArea как SubWindow (не наследуется от него, а добавляется в QMdiArea методом addSubWindow). И весёлость заключается в том, что выставив у QMdiArea setAcceptDrops(true) получаю ровным счётом ничего... На указателе с перетаскиваемым объектом знак "нельзя" (перечёркнутый кружок). Может кто сталкивался с подобным? Или у меня где-то ошибка? З.Ы. dragEnterEvent работает, в метод входит. Но мне нужно отлавливать отпускание мыши в событии dropEvent. Вот в него не заходит. |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 05.12.2012
Сообщений: 67
|
![]()
Вообщем, с проблемой разобрался. Надо было:
#include <QDragEnterEvent> #include <QDropEvent> Теперь встал очередной вопрос: как выдернуть QMimeData из QDropEvent? |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 05.12.2012
Сообщений: 67
|
![]()
И этот вопрос я решил успешно:
Надо переопределить метод mimeData в QTableWidget следующим образом: Код:
А, далее, просто ловим его в другом виджете: Код:
|
![]() |
![]() |
![]() |
#4 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]()
прикольно, не видел метод mimeData. Я при драгЕвенте засовывал в mime указатель на перестаскиваемый элемент, при дропе юзал dynamic_cast вроде бы. А может быть путаю, но mimeData() точно не использовал.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Drag And Drop | Adyvan | C# (си шарп) | 0 | 04.03.2012 06:27 |
drag and drop | kelty | Помощь студентам | 0 | 11.09.2009 23:00 |
Drag and Drop | nusik | Общие вопросы C/C++ | 2 | 09.07.2009 11:09 |
Нужна помощь (Drag-And-Drop & Drag-Abd-Dock)) | Arkuz | Общие вопросы Delphi | 1 | 18.04.2009 00:15 |
Drag and Drop | Xardas | Общие вопросы Delphi | 8 | 20.01.2008 23:09 |