Drga'n'drop файлов из проводника

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1378
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Drga'n'drop файлов из проводника

Сообщение RaFaeL »

Есть у кого-нибудь примерчик такой работы? Т.е. перетащить файл (файлы) в окно, на выходе должен быть путь (список путей). С63
kreator
✯ Ветеран ✯
Сообщения: 4989
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 21 раз

Drga'n'drop файлов из проводника

Сообщение kreator »

Было недавно обсуждение - http://forum.clarionlife.net/phpbb/view ... f=1&t=3362, я инициировал. На самом деле там всё просто, посмотри в хелпе тему "DropID", там есть пример работы с меткой "~FILE".
We are hard at work… for you. :)
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1378
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Drga'n'drop файлов из проводника

Сообщение RaFaeL »

Спасибо, а то у меня поиск эту тему почему-то не нашел, искал и по слову "проводник" и по другим
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1378
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Drga'n'drop файлов из проводника

Сообщение RaFaeL »

Мммм, наверное тупой вопрос - а как собственно понять, что нам тут прилетело - файл или каталог?
kreator
✯ Ветеран ✯
Сообщения: 4989
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 21 раз

Drga'n'drop файлов из проводника

Сообщение kreator »

А что даёт dropid() в случае каталога? Слэш в конце есть?
We are hard at work… for you. :)
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1378
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Drga'n'drop файлов из проводника

Сообщение RaFaeL »

Нет слэша
Можно приделать костыль в виде добавления слэша и exists, в этом случае для каталога будет 1 а для файла 0, но мне кажется это как-то неаккуратно
kreator
✯ Ветеран ✯
Сообщения: 4989
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 21 раз

Drga'n'drop файлов из проводника

Сообщение kreator »

Почему неаккуратно? Dropid даёт только имя, а дальше твоё дело как с ним манипулировать. Задача-то какая?
We are hard at work… for you. :)
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1378
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Drga'n'drop файлов из проводника

Сообщение RaFaeL »

Если Drop висит на sheet и при этом стоит prop:nosheet то похоже что тоже не работает... Либо как то связано с тем, что внутри есть еще sheet
kreator
✯ Ветеран ✯
Сообщения: 4989
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 21 раз

Drga'n'drop файлов из проводника

Сообщение kreator »

RaFaeL писал(а):Если Drop висит на sheet и при этом стоит prop:nosheet то похоже что тоже не работает... Либо как то связано с тем, что внутри есть еще sheet
У меня проблема с Tab'ами. Внутри них dropid() не работает, и на Tab'ах тоже не работает. А вот на Sheet работает, причём и с prop:nosheet, и с внутренним вторым Sheet'ом.
We are hard at work… for you. :)
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1378
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Drga'n'drop файлов из проводника

Сообщение RaFaeL »

Твою тему я читал, делал по рекомендации, во всей программе заработало (но окна в основном простенькие), а в двух окнах не заработало, хотя и там вешал на самый коренной в окне Sheet. Из-за чего конкретно не работает сложно сказать, окна очень навороченные ("карточка клиента"), может что другое мешает. Разбираться не стал, повесил код на само окно, там работает, а для пользователя разницы не будет. Но факт "не работает" имеет место быть
kreator
✯ Ветеран ✯
Сообщения: 4989
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 21 раз

Drga'n'drop файлов из проводника

Сообщение kreator »

RaFaeL писал(а):Разбираться не стал, повесил код на само окно, там работает, а для пользователя разницы не будет.
Хочу спросить, конкретики Вашей не зная. Если на окне много контролов, а Drop на самом окне, то получается ведь не красиво. Drop нужен в конкретное место (например, в List или в конкретный Region), а программа при этом показывает, что можно куда угодно. Или закрываем на это глаза?
We are hard at work… for you. :)
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1378
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Drga'n'drop файлов из проводника

Сообщение RaFaeL »

На окне sheet почти во все окно (кроме управляющих кнопок) но c prop:wizard и prop:nosheet, на одной из закладок list со списком прикрепленных файлов. Задача - прикрепить файл к клиенту. Это программистам важно, чтобы drop работал на list, а пользователю это не важно, ему даже лучше будет если это все работает в любом месте карточки клиента, меньше думать надо. А после того как drop прошел - переключаем на нужную закладку и показываем результат. Конечно, это все подходит только если в этом окне лишь одна возможная задача сделать в него drop, но в данном случае это так
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1378
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Drga'n'drop файлов из проводника

Сообщение RaFaeL »

В идеале конечно было бы иметь некий метод PreDrop который выполнялся бы в момент когда нечто тащится и находится над окном но еще не кинуто, тогда можно было бы заранее переключить на нужную закладку, но, как я понимаю, такого нет
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3135
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Drga'n'drop файлов из проводника

Сообщение Дед Пахом »

RaFaeL писал(а): В идеале конечно было бы иметь некий метод PreDrop который выполнялся бы в момент когда нечто тащится и находится над окном но еще не кинуто, тогда можно было бы заранее переключить на нужную закладку, но, как я понимаю, такого нет
Для этого есть сабклассинг.
С уважением, ДП
kreator
✯ Ветеран ✯
Сообщения: 4989
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 21 раз

Drga'n'drop файлов из проводника

Сообщение kreator »

Вот если к листу нужен drop, я рассматривал вариант размещения этого листа не в Sheet, а при изменении Tab'а этот лист хайдить/анхайдить. По-моему более логично.
We are hard at work… for you. :)
Ответить