![]() |
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]() ![]() ![]() |
|
Toohtik |
|
|||
![]() Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 142 Регистрация: 30.1.2006 Где: Харьков Репутация: нет Всего: нет |
Есть окошко. Надо чтоб при бросании на него файла определялось месторасположение файла. Достаточно ли трудно это делать? Есть ли какянибудь литература на эту тему?
|
|||
|
||||
rsm |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 999 Регистрация: 16.3.2005 Репутация: 4 Всего: 62 |
Функции DragAcceptFiles и DragQueryFile тебе в помощь. Код простой, в несколько строчек.
|
|||
|
||||
Toohtik |
|
|||
![]() Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 142 Регистрация: 30.1.2006 Где: Харьков Репутация: нет Всего: нет |
Слышал про них, но там где я читал указывалось что надо еще вектор прерываний строить... rsm, ты кстати первый говориш что это легко сделать, это меня и сильно смущало... |
|||
|
||||
rsm |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 999 Регистрация: 16.3.2005 Репутация: 4 Всего: 62 |
![]() Потому что это действительно легко сделать, в аттаче пример. Присоединённый файл ( Кол-во скачиваний: 26 ) ![]() |
|||
|
||||
Toohtik |
|
||||
![]() Шустрый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 142 Регистрация: 30.1.2006 Где: Харьков Репутация: нет Всего: нет |
Вроде все легко и в премере разобрался но не могу понять что значит в
(HDROP) wParam? В MSDN написано, что
Т.е. должна быть структура? |
||||
|
|||||
rsm |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 999 Регистрация: 16.3.2005 Репутация: 4 Всего: 62 |
||||
|
||||
Emura |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 7.2.2009 Репутация: 1 Всего: 1 |
автор топика задал вопрос о drag&drop относительно файлов, хотелось бы услышать что-нибудь относительно объектов.
понял что надо смотреть на DragObject, но этой функции даже в справке нет. спасибо. ps. drag&drop в рамках одного процесса. провел эксперимент с одним окном
самое удивительное что сработало! но что-то мне подсказывает что чтото здесь не так ![]() Это сообщение отредактировал(а) Emura - 4.6.2009, 00:13 |
|||
|
||||
GremlinProg |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
каких объектов? что-то конкретное, или вообще, любая информация? это из какой оперы? управляемый перенос чего-либо осуществляется через интерыейс захвата мыши: SetCapture, ReleaseCapture на событиях WM_LBUTTONDOWN, WM_MOUSEMOVE, WM_LBUTTONUP в режиме захвата, инициатор переноса (источник) получает все сообщения мыши, поэтому всегда можно проконтролировать куда был "опущен" объект при переносе (определить приемник), и сделать необходимые действия в цепочке "источник -> приемник" -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
Emura |
|
||||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 7.2.2009 Репутация: 1 Всего: 1 |
да хотябы указатель. наверное с ним универсальней будет. а пробовал вот с интом.
winuser.h ![]() чуть повыше объявления этих функций
хм.. идея понятна про реализацию спрошу. например: есть два окна, расположены на родителе(третьем окне). и надо передать структуру от одного окна другому. следовательно первое окно должно отдавать, а второе принимать. каким образом заставить второе окно в нужный момент среагировать? (если сообщения отсылаются первому) т.е. какова здесь правильная последовательность действий. Это сообщение отредактировал(а) Emura - 4.6.2009, 01:12 |
||||||||
|
|||||||||
Emura |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 7.2.2009 Репутация: 1 Всего: 1 |
сделал всетаки этот драгдроп! надо было в пределах своего поцесса поэтому заморачиваться не стал и придумал свою реализацию. отталкивался при создании от совета GremlinProg'а.
попутный вопрос: при перемещении мышкой тех же папок под курсором мы видим полупрозрачную иконку "схваченной" папки. как можно реализовать подобный эффект? создавать временное окно под курсором? или есть более рациональное решение? Это сообщение отредактировал(а) Emura - 5.6.2009, 13:06 |
|||
|
||||
GremlinProg |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2706 Регистрация: 9.8.2005 Где: Тюмень Репутация: 99 Всего: 106 |
http://www.i2r.ru/static/565/out_17613.shtml смотри раздел "Опеpации Drag-and-Drop над контpолом tree view" аналогично, с помощью ImageList'а реализуется механизм в любом окне недостаток: такой полупрозрачный "курсор" может находиться только в пределах какого-либо окна -------------------- "Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины." |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |