|
|
|
TreeView и OleDragDrop
|
|||
|---|---|---|---|
|
#18+
Почему не срабатывает OleDrag у Treeview при OleDragMode = 0 (программно) И как можно организовать перетаскивание узла дерева программно... Как я сделал для текста в гриде... Grid.Column1.Txt.MouseDown Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. f_drag_t.Timer Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2007, 14:57 |
|
||
|
TreeView и OleDragDrop
|
|||
|---|---|---|---|
|
#18+
никаких таймеров не нужно таймер - зло (ВМ - не нужно обсуждать) активиксу необходимо выставить OleDragMode=1 OleDropMode=1 прописать методы oleDragOver - работает когда зацепили и тащим oleDragDrop - притащили и отпустили лепить пример лень, вот готовый вариант примеры методов (изврат - тащим с дерева на дерево в разных формах) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 10:49 |
|
||
|
TreeView и OleDragDrop
|
|||
|---|---|---|---|
|
#18+
alex11100таймер - зло (ВМ - не нужно обсуждать) Так не нужно безосновательных утверждений. Сколько можно повторять: либо аргументируйте, либо молчите. А лозунгов и агиток я уже наслушался. Не вводите людей в заблуждение. Нет бесполезных (вредных) объектов или технологий. Каждый объект (технология) предназначена для решения определенного круга задач. Выбор того или иного объекта (технологии) - это вопрос конкретной задачи и личных предпочтений программиста . Вы демонстируете определенные личные предпочтения. Ну и пишите "IMHO". Не выдавайте свои собственные предпочтения за истину в последней инстанции . Пока Вы будете так безапеляционно бросаться безосновательными утверждениями я буду по прежнему указывать на их некорректность. Кстати, Вы ведь ни разу так и не ответили на все мои аргументы. Просто бросаете лозунг и в кусты. А доказать? Да, прежде чем Вы опять начнете безосновательно что-то утверждать, заметьте, что в данном случае я согласен. Для данной задачи таймер не нужен. Но это не значит, что "таймер - зло". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 11:28 |
|
||
|
TreeView и OleDragDrop
|
|||
|---|---|---|---|
|
#18+
ну понеслось угу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 12:00 |
|
||
|
TreeView и OleDragDrop
|
|||
|---|---|---|---|
|
#18+
Может я не так задал вопрос... Мне надо что перетаскивание осуществлялось при зажатой кнопки мыши более 0.8-1 сек на Ноде... Само перетаскивание у меня осуществленно... Но пользователи жалуются... Особенно приклонного возраста... че сами того не хотев (при двойном) клике перетаскивают узел дерева куда-то... потом найти не могут... В НодКлике и ДаблКлике есть коды... Типа открыть данный уровень... Нарисовать тулбар с доступными кнопками и т.д. ... Это все занимает время... Автоматический Оде-Драг/Дроп мне не подходит... Как на Дереве так и на Гриде... У грида осуществленно на ура... Можно тягать из проги-в-прогу... А вот у Дерева траблы... Так как дерево и грид является и источником и получателем при перетаскивании... Юзвер дергнул мышей испугался и привет... Убежала ветка дерева... Выдавать сообщения то ж не очень хорошо... Меня заставили их убрать... Может у кого-то есть идея... А то я начал уже строить класс дерева... Где ноды - это рис. + текст(лейбел+текстбокс[для замены текста])... Работает вроде ни че... Добавлеят уровни кругом-бегом... Ну вот прорисовка очень долго происходит... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 15:47 |
|
||
|
TreeView и OleDragDrop
|
|||
|---|---|---|---|
|
#18+
а почему это Вам не подходит встроенный механизм поведения активикса????? подсветите при перетаскивании ноды и человек не будет дергаться объясните как таскать встать, нажать правую кнопку, начать тащить, если отпустили на чем-то, туда и прыгнет, если встали назад и отпустили, то там и останется я думаю не нужно изобретать велосипед, он уже изобретен до Вас ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 16:03 |
|
||
|
TreeView и OleDragDrop
|
|||
|---|---|---|---|
|
#18+
1.1 - 2.1 - 3.1 - 2.2 1.2 и т.д 3.1 Нод для открытия уровня При двойном щелчке(дрожащими руками[с перепоя]) по Ноду есть вероятность переноса его как дочернего в пункт 2.2 Плюс до двойного щелчка срабатывает НодКлик и прорисовка тулбара... что увеличивает такую вероятность... По этому мне и надо что б зажал и подождал... Пользователи не просто-так жалуются... У кого-то ЭТ регулярно получается... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 16:27 |
|
||
|
TreeView и OleDragDrop
|
|||
|---|---|---|---|
|
#18+
Я отказался от механизма Drag-Drop по двум причинам: 1) Легко промахнуться. Особенно тем у кого "руки дрожат" 2) При использовании TreeView нет однозначности в действиях: "положить рядом" или "вложить внутрь" Заменил на Shortcut-меню. Т.е. по правой кнопке мыши возникает дополнительное Shortcut-меню, в котором выведены соответсвующие пункты с действиями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 17:06 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34364240&tid=1589800]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
62ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 358ms |

| 0 / 0 |
