Я видел это как в Linux (Ubuntu 13.10), так и в Windows (7), когда окно (редактор, браузер, терминал и т.д.), Содержащее текстовое поле с мигающим курсором, выходит из фокуса, курсор перестает мигать.

Почему это так? Некоторые детали внутреннего процесса (как) это будет оценено.

1 ответ1

0

Мигающая подсказка готова к вводу (потому что она на переднем плане).

Это визуальная подсказка, так что вы знаете, к какому блоку команд будет добавлен ваш ввод.

Больше информации из Википедии:

В большинстве интерфейсов командной строки или текстовых редакторов текстовый курсор или каретная навигация представляют собой подчеркивание, сплошной прямоугольник или вертикальную линию, которая может мигать или быть постоянной, указывая, где текст будет помещен при вводе (точка вставки),

а также

Мигание текстового курсора обычно временно приостанавливается при его перемещении; в противном случае курсор может изменить положение, когда он не виден, что затрудняет отслеживание его положения.

Что касается того, "Как" это реализовано, это будет зависеть от используемого интерфейса командной строки и, вероятно, будет варьироваться от поставщика к поставщику, и многие из этих поставщиков имеют закрытый исходный код.

Зачастую на внешний вид курсора также влияет / контролирует видеоадаптер, но, как правило, только в режиме реального видео-текста.

Если бы я реализовал свой собственный, я бы изобразил таймер, который переключает состояние видимости курсора, и этот таймер был бы приостановлен, когда окно теряет фокус (возможно, также устанавливая состояние в невидимом), и запустился бы снова когда фокус возвращается. Но это упрощает все это. ;)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .