Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Drag&Drop в компоненте TreeView, САБЖ 
:(
    Опции темы
NiТR0
  Дата 19.12.2006, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 28.6.2005

Репутация: нет
Всего: нет



Народ, помогите организовать Drag&Drop в компоненте TreeView.
Задача простая: перенести элемент одной ветки в другую.
Проблема в том, что и источник и приёмник один - TreeView1 и при перетаскивании элемента ветки (о нем известно все) не могу найти элемент той ветки, куда он бросается.

Я использую следующий код
Код

void __fastcall TForm1::TreeView1MouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)
или
void __fastcall TForm1::TreeView1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y)
{
    MyX = X;
    MyY = Y;   
}
void __fastcall TForm1::TreeView1EndDrag(TObject *Sender, TObject *Target, int X, int Y)
{
    if(Target != NULL)  
               ShowMessage("Элемент перемещен в  " + TreeView1->GetNodeAt(MyX, MyY)->Text);
}

void __fastcall TForm1::TreeView1DragOver(TObject *Sender, TObject *Source, int X, int Y, TDragState State, bool &Accept) // чтоб все работало
{
   if(TreeView1->Selected->Count == 0)  Accept = true;     // можно перемещать только самые "глубокие" элементы
   else Accept = false;
}

Но дело в том, что при "захвате" и перетаскивании элемента никакие события типа OnMouseUp, OnMouseMove не работают и следовательно нельзя определить куда юзеру вздумается его швырануть.
Ситуация принципиально другая , если сушествует 2 компонента для реализации Drag&Drop (не пробовал, но догадываюсь), поскольку у второго компонента свои обработчики координат места, куда швыряют элемент первого компонента.
Но мне-то надо наладить Drag&Drop на одном.... 
Очень прошу помощи....

PS
Слышал, что вроде бы есть какое-то свойство формы, которое назначает события типа OnMouseUp как первоочередные (а уже потом события Drag), тогда я смог бы считать координату нужного места. Но не могу найти это свойство. Может знает кто?
PM MAIL   Вверх
SenkraD
Дата 20.12.2006, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 3.2.2006
Где: Украина::Киев

Репутация: 9
Всего: 23



По-моему, это то, что тебе надо.
Здесь
Что непонятно будет - спрашивай


--------------------
 Имеющий язык - да не убоится спросить! 
user posted image
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0397 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.