Spec-Zone .ru
спецификации, руководства, описания, API
|
Если Вы запишете приложение, то Вы будете хотеть поддерживать возможность передать информацию между компонентами в Вашем приложении. Но Вы будете также хотеть, чтобы Ваше приложение играло хорошо с другими — это включает поддержку возможности передать информацию между Вашим приложением и другими приложениями Java, и между Вашим приложением и собственными приложениями. Возможность передать данные принимает две формы:
JList
и отбрасывание на a JTextField
компонент (стрелки показывают путь данных): JList
и вставка на a JTextField
компонент: Давайте скажем, что есть пользователь по имени Ролло, который запускает приложение Java. Он хочет перетащить некоторый текст от списка и внести его в текстовое поле. (Отметьте, что процесс является тем же самым, перетаскивая от собственного приложения до приложения Java.), Короче говоря перетаскивание и отбрасывание обрабатывают работы как это:
COPY
, MOVE
, или LINK
.MOVE
действие. Содержание Клавиши CTRL, перетаскивая запросы COPY
действие, и содержащий и Сдвиг и Управление запрашивает LINK
действие.В то время как это могло бы походить на пугающий процесс, Swing обрабатывает большую часть работы для Вас. Платформа разрабатывается так, чтобы Вы включили детали, определенные для Вашего компонента, и остальное "только работает".
Больше на этом в следующем разделе.
Мы не рекомендуем, чтобы Вы создали свое собственное, перетаскивают и отбрасывают поддержку, используя классы AWT. Эта реализация потребовала бы существенной сложной поддержки, внутренней к каждому компоненту. До выпуска 1.4, когда dnd система была переделана, разработчики действительно иногда создавали свою собственную поддержку dnd, но это не работает со сложными компонентами, как дерево и таблица, которые имеют тонкий выбор и отбрасывают проблемы.