Как сделать курсор невидимым c

Добавил пользователь Валентин П.
Обновлено: 05.10.2024

Как скрыть указатель мыши под X11? Я хотел бы использовать встроенные библиотеки, чтобы сделать это, а не что-то вроде SDL (SDL_ShowCursor(0)) или glut (glutSetCursor(GLUT_CURSOR_NONE)). Кроме того, указатель мыши должен быть скрыт независимо от местоположения указателя, а не только в собственном окне.

вы можете создать и установить невидимую тему курсора. Этот трюк используется maemo, потому что довольно бессмысленно иметь курсор на сенсорном устройстве.

к сожалению, возможность изменения темы глобального курсора во время выполнения неоднородна в приложениях и наборах инструментов X11. Вы можете изменить ресурс сервера Xcursor.theme , и никто не заметит (обычно это запрашивается только при запуске); вы можете сообщить xsettings который, похоже, влияет только на Gtk+ программы; KDE использует некоторую связь через свойства в корневом окне и т. д.

по крайней мере, изменение курсора для вашего собственного приложения так же просто, как XDefineCursor, и если вы сделаете это на корневом окне, некоторые приложения может следовать вдоль.

здесь описание как unclutter утилита делает это.

Unclutter-это программа, которая постоянно работает в фоновом режиме X11 сессия. Он проверяет положение указателя X11 (курсора) каждые несколько секунды, и когда он находит, что он не переместился (и нет кнопок нажатии на мышь, и курсор находится не в корневом окне) он создает небольшое подокно в качестве дочернего элемента окна, в котором находится курсор. Новое окно устанавливает курсор размера 1x1 но маска все 0, т. е. невидимый курсор. Это позволяет увидеть весь текст в например, xterm или xedit. Толпа людей согласится с этим. следует делать меньше отвлекает.

после создания программа ожидает, пока указатель покинет окно а потом уничтожает его, восстанавливая первоначальную ситуацию. События Button прозрачно передаются в родительское окно. Они обычно заставляют курсор появляться снова, потому что активный захват будет сделано программой пока кнопка вниз, поэтому указатель по-видимому, покинет окно, даже если его положение x y не изменится.

Я бы предпочел использовать более простой метод:

вы почти не видите курсор, все еще он доступен. Чтобы отключить мышь:

или отключить модуль мыши постоянно где-то в /etc/. Обратитесь к руководству по распределению.

альтернатива unclutter

Unclutter не работал для меня, так как он не хорошо играет с аппаратными ускоренными поверхностями (например, теми, которые производятся VA-API intels при декодировании видео). Поэтому я нашел программу, которая спрятала указатель мыши менее окольным путем,hhp, и переписал его в C с минимальными зависимостями, результат hhpc. Я сделал это, чтобы избавить Хаскелла от необходимости скомпилируйте его и потому, что hhp иногда перестает скрывать указатель мыши.

hhpc, полагается только на glibc и xlib , поэтому его легко построить, просто сделайте make release . Вы можете получить код и инструкции от мой репозиторий. Это очень эффективная память и процессор (потому что он почти ничего не делает).

Я закончил с использованием XDefineCursor как ephemient упомянул. Управляющее приложение изменило курсор корневого окна по умолчанию, а другие приложения (которые находятся под моим контролем) унаследовали его.

специфика кода выглядит так:

для того, чтобы скрыть курсор, а затем после того, как я

для восстановления курсора левой руки X (так как это корневое окно, и я не хочу, чтобы он оставался невидимым. Я не уверен, но я также мог бы использовать

xinit -- -nocursor или startx -- -nocursor может работать.

используйте xbanish! Это "изгнать курсор мыши при вводе"! Начните с

Это мое решение. Он помещает курсор туда, где вы его не видите (в моем случае, в левом нижнем углу)-затем он отключает мышь, поэтому вы не можете ее перемещать.

Примечание вы можете анализировать данные из xrandr , или поместите эти данные в среду при входе в систему, а затем используйте ее; таким образом, вам не придется жестко кодировать. Но, что касается меня, я никогда не меняю разрешение экрана, поэтому 768 в порядке:)

Я думаю, что этот пост может стать немного старым, но если то, что я нашел, может помочь некоторым из нас, я определенно должен опубликовать его здесь ;)

Я нашел себе чистое и простое решение, которое отлично работает, без использования " xcb " (для того, что я пытался достичь, это было немного сверхинженерии (..)

все, что вам нужно, это команда "xsetroot" с соответствующими аргументами/параметрами:

- > чтобы скрыть курсор мыши, вы нужен дополнительный маленький файл (я назвал свой " blnk_ptr.cur и")

содержание этого файла:

затем, мы можем использовать две следующие команды:

- > чтобы скрыть курсор указателя мыши:

-> чтобы снова показать курсор указателя мыши:

(вы можете использовать курсор указателя мыши, отличный от "left_ptr", но этот, похоже, широко доступен в системах *nix (..)

Btw - > я еще не знаю, как получите имя указателя, используемого в настоящее время системой с помощью xsetroot --> я думаю, что я [как обычно] digg это тоже, но я был бы рад иметь кого-то, кто знает, как дать мне ответ ( было бы неплохо ;) )

Иногда видеть значок указателя мыши на экране, когда вы пытаетесь работать, может раздражать. К счастью, вы можете скрыть это отвлечение. Указав компьютеру, чтобы указатель мыши не отображался при вводе текста, вы можете убрать это нежелательное изображение с экрана и сосредоточиться на своей задаче.


Вы можете скрыть значок указателя мыши во время ввода.

Шаг 1

Шаг 2

Шаг 3

Шаг 4

Шаг 5

Как скрыть указатель мыши в OS X?

Как скрыть указатель мыши в OS X?

Когда вы смотрите фильм, пишите электронную почту, читаете электронную книгу или играете в онлайн-игру на своем Mac, указатель мыши может отвлекать внимание. Это мешает .

Поднимите руку, если это случилось с вами: вы набираете текст в своем текстовом редакторе, когда ваш курсор внезапно перепрыгивает куда-то еще, часто задолго до того, как вы это осознаете .

Как изменить указатель мыши в Excel

Как изменить указатель мыши в Excel

Microsoft Excel - это программа для работы с электронными таблицами для Windows, которая предлагает пользователям инструменты для организации, составления диаграмм и составления данных. Один из таких полезных инструментов, предлагаемый в текущих версиях .

Репутация: 25
Всего: 50

Репутация: 7
Всего: 122

Процедура определна, но не работает.

Либо процедура вооще не определена.

Репутация: 25
Всего: 50

Код

void __fastcall TfrmMain :: SpeedButton1Click(TObject *Sender) ShowCursor(false);
>

Курсор пропал на форме, а если выходит за её пределы - появляется

Репутация: 7
Всего: 122

НУ а если принудить курсор находиться на форме - а там он невидим.

Код

// Для перемещения курсора используйте функцию:
SetCursorPos(X,Y);

2. Позиция курсора

Код

// Для того чтобы узнать позицию курсора напишите следующий код:
TPoint cPt;
GetCursorPos(&cPt);
ShowMessage(int(cPt.y));//Возвращает y-позицию курсора мыши
TPoint cPt;
GetCursorPos(&cPt);
ShowMessage(int(cPt.x));//Возвращает x-позицию курсора мыши

3. Как ограничить перемещение курсора мыши

Код

// Для того чтобы ограничить перемещение курсора мыши какой-либо областью экран, напишите следующий код:
void __fastcall TForm1::Button1Click(TObject *Sender)
RECT LR;
LR.left=100;
LR.top=100;
LR.right=500;
LR.bottom=500;
ClipCursor(&LR);// Ограничиваем в заданой области
>
// Освободить курсор можно, передав функции NULL:
ClipCursor(NULL);

4. Как загрузить свой курсор

Код

// Напишите следующий код:
HWND i;
i=LoadImage(0,"cursor1.cur",IMAGE_CURSOR,0,0,LR_LOADFROMFILE);
if (i==0) ShowMessage("Ошибка загрузки курсора!");
else
Screen->Cursors[1]=i;
Form1->Cursor=1;
>

Репутация: 25
Всего: 50

Репутация: 9
Всего: 23

Если тебе надо, чтобы курсора определённое время не было видно на вообще во время работы программы,
то вродь это делатся через глобальную переменую Screen: там есть свойство Cursor.
Более подробно не помню.

user posted image

Имеющий язык - да не убоится спросить!

Репутация: 7
Всего: 122

Репутация: 25
Всего: 50

Код

SetSystemCursor(LoadCursorFromFile("lnodrop.cur"), OCR_NORMAL);

[C++ Error] Unit1.cpp(65): E2451 Undefined symbol 'OCR_NORMAL'

Репутация: нет
Всего: нет

Кста еще вопрос на эту тему: надеюсь курсор в режиме невидимости не будет выполнять свои обычные функции (нажатие кнопок, прокрутка колеса)? Если будет, то какая есть функция для его дезактивации?

Репутация: 25
Всего: 50

Код

const OCR_NORMAL = 32512;
const OCR_IBEAM = 32513;
const OCR_WAIT = 32514;
const OCR_CROSS = 32515;
const OCR_UP = 32516;
const OCR_SIZE = 32640;
const OCR_ICON = 32641;
const OCR_SIZENWSE = 32642;
const OCR_SIZENESW = 32643;
const OCR_SIZEWE = 32644;
const OCR_SIZENS = 32645;
const OCR_SIZEALL = 32646;
const OCR_ICOCUR = 32647;
const OCR_NO = 32648;
const OCR_HAND = 32649;
const OCR_APPSTARTING = 32650;

далее создаём пустой курсор в Image Iditor-е, потом:

Код

SetSystemCursor(LoadCursorFromFile("Cursor1.cur"), OCR_NORMAL);

Мышь работает как обычно, только курсор невидим.
Гы-гы-гы. Бомба.

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи
  • FAQ раздела лежит здесь!

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

[ Время генерации скрипта: 0.1595 ] [ Использовано запросов: 21 ] [ GZIP включён ]

Я хочу скрыть курсор при отображении веб-страницы, предназначенной для отображения информации в зале здания. Это не должно быть интерактивным вообще. Я попытался со свойством курсора и прозрачным изображением курсора, но у меня не получилось.

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

Чтобы установить это для элемента в Javascript, вы можете использовать свойство style :

Если вы хотите установить это на все тело:

Убедитесь, что вы действительно хотите скрыть курсор. Это может действительно раздражать людей.

Если вы хотите сделать это в CSS:

Хотя cursor: none CSS-решение, безусловно, является надежным и простым обходным решением , если вашей реальной целью является удалить курсор по умолчанию во время использования веб-приложения, или Реализовать собственную интерпретацию движения мыши (например, для игр FPS), вы можете рассмотреть возможность использования API блокировки указателя.

Чтобы снять блокировку, вы можете использовать exitPointerLock:

Дополнительные примечания

Нет курсора, по-настоящему

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

То есть вы не можете оставить окно с курсором, чтобы оно показывалось снова, поскольку курсора нет.

Как упомянуто выше, это очень мощный вызов API, и поэтому его можно выполнять только в ответ на некоторое прямое взаимодействие с пользователем в Интернете, такое как щелчок; например:

Кроме того, requestPointerLock не будет работать из изолированной iframe , если не установлено разрешение allow-pointer-lock .

Прослушивание движения сырой мыши

API блокировки указателя не только удаляет мышь, но и перенаправляет необработанные данные о перемещении мыши в вызываемый элемент requestPointerLock . Это можно прослушать, просто используя событие mousemove , а затем получая доступ к свойствам movementX и movementY объекта события:

Я сделал это с прозрачным * .cur 1px до 1px, но это выглядит как маленькая точка. :( Я думаю, что это лучшая кросс-браузерная вещь, которую я могу сделать. CSS2.1 не имеет значения 'none' для свойства 'cursor' - он был добавлен в CSS3. Именно поэтому он работает не везде.

Для всего HTML-документа попробуйте это

Или если некоторые CSS перезаписать ваш курсор: никто не использует! Важный

Курсор мыши Windows 11 на синем фоне

Вас беспокоит, когда курсор мыши блокирует вид текстового поля, которое вы вводите? В этом случае вы можете скрыть курсор при вводе текста одним из двух способов на ПК с Windows 10 или 11. Мы покажем вам, как это сделать.

Что нужно знать о скрытии курсора при наборе текста

Как в Windows 10, так и в 11 у вас есть два способа скрыть курсор во время набора текста. Первый использует встроенную опцию, но она скрывает курсор только при вводе текста в таких приложениях, как Блокнот, WordPad и Microsoft Word. Ваш курсор продолжает отображаться в других приложениях, таких как Chrome и Edge.

Если вы хотите скрыть курсор при вводе текста во всех своих приложениях, используйте бесплатное приложение с открытым исходным кодом под названием Windows Cursor Hider. Одним щелчком мыши это приложение гарантирует, что ваш курсор не появится, когда вы начнете печатать на своем ПК.

Примечание. Мы продемонстрируем описанные ниже процедуры на ПК с Windows 11. Шаги немного отличаются для Windows 10, но выполнить их не составит труда.

Скрыть курсор при наборе текста в некоторых приложениях

Выбирать

Нажмите

Выбирать

Доступ к

Давать возможность

И все готово. С этого момента, когда вы начнете вводить текст в приложении, таком как Блокнот, ваш компьютер будет скрывать курсор. Как только вы переместите мышь или трекпад, появится курсор.

Скрыть курсор при вводе во всех приложениях

Чтобы отключить курсор при вводе текста во всех приложениях на ПК с Windows, используйте приложение Windows Cursor Hider. Это бесплатное приложение доступно в виде исполняемого файла и скрипта AutoHotKey. Оба работают одинаково.

Для демонстрации мы будем использовать исполняемую версию.

Чтобы использовать этот метод, откройте веб-браузер на ПК с Windows 10 или 11 и запустите сайт Windows Cursor Hider. Прокрутите сайт вниз и щелкните ссылку, чтобы загрузить исполняемый файл приложения.

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

Запустите приложение Windows Cursor Hider.

В отличие от многих других приложений, вы не увидите ни окна приложения, ни чего-либо еще. Однако приложение работает и доступно на панели задач вашего ПК (область с правой стороны панели задач).

Скрытие курсора Windows на панели задач.

Чтобы проверить, работает ли приложение, откройте любое приложение (например, Chrome) и начните вводить текст в текстовое поле. Ваш курсор мгновенно исчезнет. Чтобы вернуть его, переместите мышь или трекпад.

Так вы избавитесь от этого небольшого раздражения в своей компьютерной жизни. Очень полезно!

Знаете ли вы, что можно написать собственный скрипт AutoHotKey для выполнения различных задач на вашем ПК? Проверьте это, если вам интересно.

Читайте также: