В человеко-компьютерном взаимодействии курсор — это индикатор, используемый для отображения текущего положения на мониторе компьютера или другом устройстве отображения , которое реагирует на ввод, например, текстовый курсор или указатель мыши.
Курсор — латинское слово, означающее «бегун». Курсор — это название прозрачного слайда с выгравированной линией, который используется для отметки точки на логарифмической линейке . Затем этот термин был перенесен на компьютеры по аналогии.
14 ноября 1963 года, присутствуя на конференции по компьютерной графике в Рино, штат Невада , Дуглас Энгельбарт из Исследовательского центра по дополнению (ARC) впервые высказал свои мысли о достижении своей цели по разработке как аппаратных, так и программных компьютерных технологий для дополнения человеческого интеллекта, размышляя о том, как адаптировать основные принципы планиметра к вводу данных по координатам X и Y, и представил себе что-то вроде курсора мыши , который он изначально назвал жуком , который в трехточечной форме мог бы иметь «точку сброса и 2 ортогональных колеса». [1] Он написал, что «жук» будет «проще» и «естественнее» в использовании, и в отличие от стилуса он будет оставаться неподвижным, если его отпустить, что означало, что он будет «гораздо лучше координировать работу с клавиатурой». [1]
По словам Роджера Бейтса, молодого разработчика оборудования в ARC под руководством Билла Инглиша , курсор на экране по какой-то неизвестной причине в то время также назывался CAT , что привело к тому, что новое указательное устройство также стали называть мышью . [2] [3]
В большинстве интерфейсов командной строки или текстовых редакторов текстовый курсор, также известный как каретка , [4] представляет собой подчеркивание , сплошной прямоугольник или вертикальную линию, которая может мигать или гореть постоянно, указывая, где будет размещен текст при вводе ( точка вставки ). В текстовом режиме отображения было невозможно показать вертикальную черту между символами, чтобы показать, где будет вставлен новый текст, поэтому вместо этого использовался курсор подчеркивания или блока. В ситуациях, когда использовался блок, блок обычно создавался путем инвертирования пикселей символа с использованием булевой математической функции- исключения или . [5] В текстовых редакторах и текстовых процессорах современного дизайна на растровых дисплеях вместо этого обычно используется вертикальная черта.
В типичном приложении для редактирования текста курсор можно перемещать, нажимая различные клавиши. К ним относятся четыре клавиши управления курсором , клавиши Page Up и Page Down , клавиша Home , клавиша End и различные комбинации клавиш с использованием клавиши-модификатора, например клавиши Control . Положение курсора также можно изменить, переместив указатель мыши в другое место документа и щелкнув.
Мигание текстового курсора обычно временно приостанавливается при его перемещении; в противном случае курсор может изменить положение, когда он невидим, что затруднит отслеживание его местоположения.
Концепцию мигающего курсора можно приписать Чарльзу Кислингу-старшему через патент США 3531796, [6] [7], поданный в августе 1967 года. [8]
Некоторые интерфейсы используют подчеркивание или тонкую вертикальную черту, чтобы указать, что пользователь находится в режиме вставки , режиме , в котором текст будет вставлен в середину существующего текста, и более крупный блок, чтобы указать, что пользователь находится в режиме замены , в котором вставленный текст перезапишет существующий текст. Таким образом, курсор блока может рассматриваться как фрагмент выделенного текста шириной в один символ, поскольку при наборе текста текст в курсоре будет заменен новым текстом.
Вертикальный текстовый курсор с небольшим придатком, указывающим влево или вправо, предназначен для указания направления текстового потока в системах, поддерживающих двунаправленный текст , и поэтому обычно известен среди программистов как «курсор двунаправленного текста». В некоторых случаях курсор может разделяться на две части, каждая из которых указывает, где будет вставлен текст слева направо и справа налево. [9]
В вычислительной технике указатель или указатель мыши (как часть стиля взаимодействия персонального компьютера WIMP ) [10] [11] [12] — это символ или графическое изображение на мониторе компьютера или другом устройстве отображения , которое повторяет движения указательного устройства , обычно мыши , сенсорной панели или стилуса . Он сигнализирует о точке, в которой происходят действия пользователя. Его можно использовать в текстовых или графических пользовательских интерфейсах для выбора и перемещения других элементов. Курсор клавиатуры также можно перемещать с помощью указателя.
Хотя указатель мыши отличается от текстового курсора, его иногда также называют курсором или курсором мыши. [13]
Указатель обычно выглядит как наклонная стрелка (наклонная, потому что исторически это улучшало внешний вид на экранах с низким разрешением [14] ), но он может различаться в разных программах или операционных системах . Использование указателя применяется, когда метод ввода или указательное устройство представляет собой устройство, которое может плавно перемещаться по экрану и выбирать или выделять объекты на экране. В графических интерфейсах, где метод ввода опирается на жесткие клавиши, такие как пятипозиционная клавиша на многих мобильных телефонах , указатель не используется, и вместо этого графический интерфейс опирается на четкое состояние фокуса .
Указатель повторяет движения указательного устройства , обычно мыши , сенсорной панели или трекбола . Этот вид указателя используется для управления элементами графических пользовательских интерфейсов , такими как меню, кнопки , полосы прокрутки или любые другие виджеты .
Горячая точка указателя — это активный пиксель указателя, используемый для нацеливания щелчка или перетаскивания . У стандартного указателя-стрелки горячая точка находится на кончике; в противном случае она часто находится в центре, хотя может находиться в любом месте указателя. [15] [16]
Во многих графических интерфейсах перемещение указателя по экрану может открывать другие активные области экрана , поскольку указатель меняет форму в зависимости от обстоятельств. Например:
I-образный указатель (также называемый I-курсором) — это курсор в форме заглавной буквы I с засечками . Цель этого курсора — указать, что текст под курсором может быть выделен, а иногда вставлен или изменен. [19]
Следы указателя можно использовать для улучшения видимости во время движения. Следы указателя — это функцияоперационных систем, позволяющая улучшить видимость указателя. Хотя они отключены по умолчанию, следы указателя были опцией в каждой версии Microsoft Windows, начиная сWindows 3.1x.
Когда следы указателя активны и мышь или стилус перемещаются, система ждет некоторое время, прежде чем удалить изображение указателя из старого местоположения на экране. Копия указателя сохраняется в каждой точке, которую указатель посетил в этот момент, в результате чего получается змеевидный след из значков указателя, который следует за фактическим указателем. Когда пользователь прекращает перемещать мышь или убирает стилус с экрана, следы исчезают, и указатель возвращается в нормальное состояние.
Функция отслеживания указателя предназначена в основном для пользователей со слабым зрением и для экранов, где плохая видимость может стать проблемой, например, для ЖК-экранов при ярком солнечном свете.
В Windows отслеживание перемещения указателя можно включить на Панели управления , обычно в апплете «Мышь» .
Представленный в Windows NT , анимированный указатель представлял собой небольшую циклическую анимацию, которая воспроизводилась в месте расположения указателя. [20] Это используется, например, для визуального указания того, что компьютер занят выполнением задачи. [21] После их появления многие анимированные указатели стали доступны для загрузки от сторонних поставщиков. Анимированные указатели не лишены своих проблем. Помимо того, что они создавали небольшую дополнительную нагрузку на ЦП, процедуры анимированного указателя действительно представляли собой уязвимость безопасности . Клиентская эксплойтная уязвимость, известная как уязвимость удаленного выполнения кода анимированного курсора Windows, использовала уязвимость переполнения буфера для загрузки вредоносного кода через процедуру загрузки анимированного курсора Windows. [22]
Идея использования курсора в качестве маркера или точки вставки для новых данных или преобразований, таких как вращение, может быть расширена до среды 3D-моделирования . Например, Blender использует 3D-курсор для определения того, где в 3D-окне просмотра должны выполняться такие операции, как размещение сеток . [23]
[…] Хотя обычно считается, что история о том, как
мышь
получила свое название, затерялась в истории, Роджер Бейтс, который был молодым разработчиком оборудования, работавшим на
Билла Инглиша
, ясно помнит, как было выбрано это название. […] Он помнит, что то, что сегодня называется курсором на экране, в то время называлось «CAT». Бейтс забыл, что означает CAT, и никто другой, похоже, тоже не помнит, но оглядываясь назад, кажется очевидным, что CAT преследовал хвостатую мышь на рабочем столе. […](336 страниц)
[…] Когда и при каких обстоятельствах возник термин «мышь
»
, трудно сказать, но один из разработчиков оборудования, Роджер Бейтс, утверждал, что это произошло под присмотром г-на
Инглиша
. Г-н Бейтс был студентом второго курса колледжа, а г-н Инглиш был его наставником в то время. Г-н Бейтс сказал, что название было логическим продолжением термина, который тогда использовался для обозначения курсора на экране: CAT. Г-н Бейтс не помнил, что означает CAT, но всем казалось, что курсор преследовал их хвостатое настольное устройство. […]
[...] так называемый интерфейс WIMP — для окон, иконок, меню, указателя [...]
Парадигма интерфейса Windows-Icons-Menus-Pointer (WIMP) доминирует в современных вычислительных системах.
стремятся выйти за рамки текущего интерфейса «WIMP» (Windows, Icons, Menus, and Pointer) [...]