Перетащите
В компьютерных графических интерфейсах пользователя перетаскивание — это жест указательного устройства , при котором пользователь выбирает виртуальный объект, «захватывая» его и перетаскивая в другое место или на другой виртуальный объект. В общем, его можно использовать для вызова многих видов действий или создания различных типов ассоциаций между двумя абстрактными объектами .
Поддержка перетаскивания присутствует не во всех программах , хотя иногда это быстрый и простой в освоении метод. Однако пользователям не всегда понятно, можно ли перетаскивать элемент или какая команда выполняется при перетаскивании, что может снизить удобство использования. [1]
Действия
[ редактировать ]Основная последовательность операций перетаскивания такова:
- Переместите указатель на объект
- Нажмите и удерживайте кнопку мыши или другого указывающего устройства , чтобы «захватить» объект.
- «Перетащите» объект в нужное место, переместив указатель на это место.
- «Бросьте» объект, отпустив кнопку
Перетаскивание требует больше физических усилий, чем перемещение того же указывающего устройства без нажатия кнопок. Из-за этого пользователь не может двигаться так же быстро и точно при перетаскивании (см. закон Фиттса ). Однако операции перетаскивания имеют преимущество, заключающееся в продуманном объединении двух операндов (объекта для перетаскивания и места перетаскивания) в одно действие. [2] Длительное перетаскивание (как в графическом дизайне) может привести к нагрузке на мышь.
Проблема с дизайном возникает, когда одна и та же кнопка выбирает и перетаскивает элементы. Неточное движение может привести к тому, что попытка выбрать объект будет зарегистрирована как перетаскивающее движение.
Другая проблема заключается в том, что цель падения может быть скрыта под другими объектами. Пользователю придется остановить перетаскивание, сделать видимыми источник и цель и начать заново. В классической Mac OS строка меню в верхней части экрана служила универсальной целью «отмены перетаскивания». Эта проблема была решена в Mac OS X с появлением Exposé .
В Mac OS
[ редактировать ]Перетаскивание, называемое в то время щелчком и перетаскиванием , использовалось в оригинальном Macintosh для манипулирования файлами (например, копирования их между дисками). [3] или папки [4] ). В System 7 добавлена возможность открывать документ в приложении, перетаскивая значок документа на значок приложения.
Apple добавила «Macintosh Drag and Drop» в систему 7.5 , расширив «щелчок и перетаскивание» на обычные операции с буфером обмена, такие как копирование или перемещение текстового содержимого внутри документа. Содержимое также можно было перетащить в файловую систему, чтобы создать «обтравочный файл», который затем можно было сохранить и использовать повторно. Файлы также можно перетаскивать в окна приложений, например, чтобы вложить документ в электронное письмо или добавить изображение в документ текстового процессора.
На протяжении большей части своей истории Mac OS использовала однокнопочную мышь , при этом кнопка занимала большую часть верхней поверхности мыши. Это может смягчить эргономические проблемы, связанные с удержанием кнопки нажатой во время перетаскивания.
В ОС/2
[ редактировать ]В рабочей среде OS /2 широко используется перетаскивание с помощью вторичной кнопки мыши , оставляя основную для выбора и щелчка. Его использование, как и других расширенных функций общего пользовательского доступа , отличало собственные приложения OS/2 от платформо-независимых портов.
В HTML
[ редактировать ]включает Рабочий проект спецификации HTML5 поддержку перетаскивания. [5] HTML5 поддерживает различные виды функций перетаскивания, включая:
- Перетаскивание текстов и HTML-кодов
- Перетаскивание HTML-элементов
- Перетаскивание файлов
В зависимости от необходимых действий можно использовать один из вышеуказанных типов. Обратите внимание: когда элемент HTML перетаскивается для перемещения его текущей позиции, его идентификатор отправляется родительскому элементу назначения; поэтому он отправляет текст и может рассматриваться как первая группа.
Веб-приложение электронной почты Google Gmail поддерживает перетаскивание изображений и вложений в новейшем браузере Google Chrome и Apple Safari (5.x). Google Images позволяет пользователям перетаскивать файлы изображений в браузер для выполнения обратного поиска изображений .
На сенсорном экране
[ редактировать ]Интерфейсы сенсорного экрана также включают перетаскивание или, точнее, длительное нажатие и последующее перетаскивание, например, на домашних экранах iPhone или Android .
В iOS 11 реализована функция перетаскивания, которая позволяет пользователю прикасаться к элементам (и нажимать другими пальцами, чтобы перетаскивать их дальше) внутри приложения или между приложениями на iPad . [6] На iPhone эта функция доступна только в том приложении, в котором пользователь начал перетаскивание. [7]
В программировании конечных пользователей
[ редактировать ]Перетаскивание считается важным подходом к созданию программ во многих системах разработки для конечных пользователей . В отличие от более традиционных текстовых языков программирования, многие языки программирования для конечных пользователей основаны на визуальных компонентах, таких как плитки или значки, которыми конечные пользователи управляют с помощью интерфейсов перетаскивания. Таблицы агентов , [8] среда программирования для детей, представила современную концепцию программирования блоков с помощью перетаскивания, предоставляющую 4 основных возможности: 1) блоки, которые можно компоновать конечным пользователем, 2) блоки могут редактироваться конечным пользователем, 3) блоки могут быть вложены для представления древовидных структур , 4) блоки расположены геометрически, чтобы определить синтаксис. Перетаскивание также присутствует во многих программах редактирования шейдеров для графических инструментов, таких как Blender . [9] Перетаскивание также присутствует в некоторых движках видеоигр, включая Unreal Engine , GameMaker Studio , Construct 2 и, с расширением, Unity .
Примеры
[ редактировать ]Типичный пример — перетаскивание значка на виртуальном рабочем столе к специальному корзины значку для удаления файла .
Дополнительные примеры включают в себя:
- данных Перетаскивание файла на программы значок или в окно для просмотра или обработки. Например, перетаскивание значка, представляющего текстовый файл, в окно Microsoft Word означает «Откройте этот документ как новый документ в Word».
- Перемещение или копирование файлов в новое место/каталог/папку,
- Добавление объектов в список объектов, подлежащих обработке,
- Перестановка виджетов в графическом пользовательском интерфейсе для настройки их макета,
- Перетаскивание атрибута на объект, к которому нужно применить команду,
- например, перетаскивание цвета на графический объект, чтобы изменить его цвет,
- Перетащив инструмент в место на холсте, чтобы применить инструмент в этом месте,
- Создание гиперссылки из одного места или слова в другое место или документ.
- Большинство текстовых процессоров позволяют перетаскивать выделенный текст из одной точки в другую.
- Перетаскивание серии блоков кода, например, в Blender, для разработки шейдеров и материалов.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Якоб Нильсен, «10 главных ошибок при проектировании приложений», http://www.useit.com/alertbox/application-mistakes.html (19 февраля 2008 г.).
- ^ Бакстон, В. (1986). «Разбивка на части и формулировка и дизайн диалогов человека и компьютера» . Материалы Всемирного компьютерного конгресса ИФИП . стр. 475–480. Архивировано из оригинала 7 июня 2004 года.
- ^ «Локоть дисковода» . фольклор.орг.
- ^ «Модель Великого Объединения (2): Искатель» . фольклор.орг.
- ^ «Рабочий проект HTML5 W3C» . w3.org.
- ^ «Перетаскивание на iPad, многозадачность и разделенный просмотр в iOS 11: все, что вам нужно знать!» . яЕще . Проверено 10 октября 2017 г.
- ^ Винсент, Джеймс (7 июня 2017 г.). «В iOS 11 iPhone также получит функцию перетаскивания» . Грань . Проверено 23 июня 2017 г.
- ^ «Выходя за рамки синтаксиса: уроки 20 лет блочного программирования в AgentSheets» (PDF) . Журнал визуальных языков и разумных систем . Архивировано из оригинала (PDF) 28 апреля 2019 года . Проверено 29 ноября 2018 г.
- ^ «Рендеринг — Справочное руководство по Blender» . сайт blender.org . Архивировано из оригинала 23 марта 2015 года . Проверено 24 января 2014 г.