2013-10-05 4 views
2

Кто-нибудь знает, как сделать это так, чтобы, когда я иду, чтобы перетащить файл на банку тьфу, это даст возможностьКак обрабатывать файл, перетаскиваемый на банку?

+Open with ... 

? Можно ли это сделать с помощью Java?

enter image description here

+0

Open .. & Open with etc - поведение платформы. Я не думаю, что это можно сделать только с помощью Java. –

+0

Положите это как ответ, чтобы я мог принять его. –

+0

Я попробую создать программу на C++, которая просто передаст файл, который перетащит на свой исполняемый файл в качестве аргумента для JVM: P –

ответ

1

Это напрямую не поддерживает перетаскивание документа на иконку Jar (или в данном случае, ярлык), но Java Web Startделает предоставляет возможность объявить интерес к типу файла (а файловая ассоциация).

Чтобы открыть его в приложении. дважды щелкните этот тип документа или щелкните правой кнопкой мыши и перейдите в «открыть с».

Обратите внимание, что множество приложений. добавьте ассоциацию типов файлов для большинства изображений, так что вы будете бороться с ними, и по умолчанию это «двойной щелчок». Мне не нравятся ваши шансы на сохранение этого дефолта, учитывая многие приложения для рисования. будет проверять параметры сопоставления файлов и предлагать «отхватить» все, которые не назначены самим себе.

Смотрите JNLP File Services demo., который ..

..prompts пользователю связать расширение файла .zzz (просто тип файла вряд конфликтовать с существующими ассоциациями файлов) типа text/sleepytime контента. Файл сборки позволяет установить тип файла во время сборки, см. build.xml в раскрываемом для подробной информации.

0

OK, вы не можете реализовать drag-and-drop для JAR-файла. Тем не менее, вы можете реализовать перетаскивание файлов для всех JComponents (например, JFrame, JLabel и т. Д.), Изменив обработчики переноса.

обработчики передачи позволяют:
1. Укажите, как экспорт данных компонентов (если таковые имеются)
2. Укажите, какие данные он импортирует (в вашем случае файл изображения)
3. Какие данные импортируются/экспорт.

Вот урок TransferHandler. Вот подробный учебник: http://docs.oracle.com/javase/tutorial/uiswing/dnd/transferhandler.html