![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Куда подевалось событие? [D6, Win2k]
Stager © (2003-01-23 20:51:00)Использую два компонента: TEhGridи TUJFileDropSource. Цель их совместного использования - дать возможность юзеру осуществлять Drag&Drop из грида куда угодно.
По идее (и согласно примерам), все должно быть так: Я проставляюUJFileDropSource1.DragControl = EhGrid1;. При захвате чего-либо в гриде, у UJFileDropSource1срабатывает событие OnStartDrag, чтобы я мог спокойно задать, что и как я собираюсь "драгать и дропать" :).
На самом деле никакое событие не срабатывает. Ставил брейкпоинт - управление туда не попадает. Если же в качестве DragControlустановить какой-нибудь ListBox- все отлично работает.
Объясните, Мастера, почему так происходит и как это обойти?
С уважением, Алексей.
Юрий Зотов (2003-01-25 08:35:00) [1]Увы, я не нашел в Кладовке TUJFileDropSource. Поиск по "Drag&Drop" дает совсем другое (кстати, то, чем лучше не пользоваться). Пожалуйста, дайте прямой URL.
Stager (2003-01-24 21:07:00) [2]Неужели никто не подскажет? Явно ведь тут что-то с наследованием... Хотя знал бы - сам бы разбирался.
С уважением, Алексей.
Stager (2003-01-24 01:58:00) [3]
> ОК, sorry за ехидство.
Принимается. :)
> Кажется, EhLib у меня на каком-то диске валялся. Завтра
> постараюсь найти, поставить и проверить. Вот только TUJFileDropSource
> у меня нет, его проверить не смогу.
TUJFileDropSourceлежит на этом самом сайте, в кладовке. Находится через поиск по "Drag&Drop". Большое спасибо за участие.
С уважением, Алексей.
Юрий Зотов (2003-01-24 01:11:00) [4]ОК, sorry за ехидство. Кажется, EhLib у меня на каком-то диске валялся. Завтра постараюсь найти, поставить и проверить. Вот только TUJFileDropSource у меня нет, его проверить не смогу.
А вообще, поддержка "дрыг-н-прыг" в Delphi реализована уже на уровне TControl. Нужно ОЧЕНЬплохо написать свой компонент, чтобы ее нарушить - а EhLib написан все же грамотно, вряд ли она там нарушена.
Stager (2003-01-23 23:50:00) [5]
> 1. OnStartDrag only occurs if DragKind is dkDrag.
> 2. Enable automatic dragging by setting DragMode to dmAutomatic
К сожалению, все именно так и есть. ((DragKind = dkDrag) and (DragMode = dmAutomatic)) = True;Хотя испробованы и другие варианты, давшие не больше.
> Правильное у Вас подозрение. Это действительно ОЧЕНЬ распространенный
> глюк. Называется Eyes.Mind.Hands.F1.Disabled.
Ценю здоровое ехидство, но хелп я читал, и не раз, а варианты установки как dmAutomatic, так и dmManualв любых комбинациях для обоих компонент пробовал. Не в моих привычках при любой загвоздке в форум бежать, а тут уже руки опускаются.
С уважением, Алексей.
Юрий Зотов (2003-01-23 23:08:00) [6]Из хелпа:
1. OnStartDrag only occurs if DragKindis dkDrag.
2. Enable automatic dragging by setting DragModeto dmAutomatic.
> есть подозрение, что это глюк достаточно общего вида, то есть
> не связанный с какими-либо уникальными и неповторимыми
> свойствами указанных компонент
Правильное у Вас подозрение. Это действительно ОЧЕНЬраспространенный глюк. Называется Eyes.Mind.Hands.F1.Disabled.