Как узнать координаты курсора мыши относительно левого верхнего угла экрана на java?
Здравствуйте. Пишу программу на java для windows. Надо узнать координаты курсора мыши относительно левого верхнего угла экрана.
Отслеживать
задан 22 мая 2017 в 19:01
91 2 2 золотых знака 3 3 серебряных знака 11 11 бронзовых знаков
MouseEvent e; e.getX(); e.getY(); Вы про это?
22 мая 2017 в 20:24
Тут ещё наткнулся вот на такой инструмент org.jnativehook.GlobalScreen.
23 мая 2017 в 10:33
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
import java.awt.*; public class Main < public static void main(String[] args) throws AWTException < Point mouseLocation = MouseInfo.getPointerInfo().getLocation(); double x = mouseLocation.getX(); double y = mouseLocation.getY(); System.out.println(x + " " + y); >>
Отслеживать
ответ дан 22 мая 2017 в 21:23
9,325 6 6 золотых знаков 23 23 серебряных знака 57 57 бронзовых знаков
Решение на JavaFX.
Работать будет только в границах окна.
Но выдавать будет именно координаты на экране.
scene.setOnMouseMoved((mme)->< System.out.println(mme.getScreenX() + ":" + mme.getScreenY()); >);
Отслеживать
ответ дан 22 мая 2017 в 22:22
1,478 14 14 серебряных знаков 24 24 бронзовых знака
- java
- windows
- координаты
- мышь
- курсор
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Определение координат курсора мыши
Возможности jQuery практически безграничны, главное преимущество — интерактивность. Благодаря jQuery можно создавать очень интересные проекты: будь то разработка сайта коттеджного посёлка или создание лендинг пейдж.
Очень часто нужно знать координаты курсора мыши, чтобы внедрить интерактив с пользователем. Сделать это очень просто, создав функцию, которая будет вызываться при событии mousemove и через event.pageX и event.pageY можно получить координаты курсора.
Помимо этого есть возможность определять координаты относительно другого объекта на сайте. Для этого нужно знать координаты самого объекта и инициализировать функцию определения координат при наведении на нужный объект.
.hover
$(document).ready(function()< // Координаты курсора относительно всего документа $(document).mousemove(function(event)< var x = event.pageX; var y = event.pageY; $('#coords1').html( 'Координаты курсора: (' + x + '; ' + y + ')' ); >); // Координаты курсора относительно отдельного блока $('.hover').mousemove(function(event)< var pos = $(this).offset(); var elem_left = pos.left.toFixed(0); var elem_top = pos.top.toFixed(0); var x = event.pageX - elem_left; var y = event.pageY - elem_top; $('#coords2').html( 'Координаты курсора: (' + x + '; ' + y + ')' ); >); >);
Наведи курсор сюда
Нам будет приятно
Еще интересное в блоге
Длинное адаптивное меню с автоматическим пунктом ещё на JavaScript
Кастомный checkbox в виде переключателя
Загрузка комментариев.
Будем рады работать именно с вами
Политика конфиденциальности персональных данных
- Общие положения.
- Настоящая Политика конфиденциальности персональных данных (далее — Политика) действует в отношении всех персональных данных, которую компания Keengo (далее – Компания), может получить от пользователя (лица, заполнившего форму обратной связи, использующего другие сервисы официального сайта keengo.ru (далее – Сайт)), в частности в ходе: отправки отзывов или вопросов, заказа услуг, участия в рекламных и/или маркетинговых кампаниях или акциях и/или ином взаимодействии (далее – Услуги).
- Заполняя форму обратной связи и нажимая кнопку «Согласен/на», расположенную на странице Сайта, на которой размещена форма обратной связи, а равно указывая свои персональные данные при использовании других сервисов Сайта, пользователь выражает согласие с настоящей Политикой и указанными в ней условиями обработки и передачи его персональных данных. Согласие Пользователя на предоставление, обработку и передачу его Персональных данных Компании в соответствии с Политикой является полным и безусловным.
- Посетителям Сайта следует воздержаться от заполнения формы и/или от использования других сервисов Сайта в случае несогласия (полного или частичного) с Политикой, а равно несогласия предоставить персональные данные.
- Согласие, даваемое пользователем, включает в себя согласие на сбор, систематизацию, накопление, хранение, уточнение (обновление, изменение), использование, занесение в базы данных (в том числе электронные) Компании, передачу внутри Компании другим отделам и подразделениям или поставщику услуг, обязующегося выполнять условия договора о защите персональных данных, в целях рассылки информационных материалов и/или в рекламных целях (в том числе рассылку приглашений на мероприятия, проводимые/организованные Компанией), трансграничную передачу, блокирование, обезличивание, уничтожение персональных данных.
- Согласие, даваемое пользователем, распространяется на следующие персональные данные: фамилия, имя, отчество, адрес электронной почты, должность, наименование организации, в которой работает пользователь, контактный телефон.
- Срок действия согласия пользователя является неограниченным, однако, пользователь вправе в любой момент отозвать настоящее согласие путём направления письменного уведомления на адрес электронной почты: info@keengo.ru, с пометкой «отзыв согласия на обработку персональных данных».
- В рамках настоящей Политики под персональными данными пользователя понимаются персональные данные, которые пользователь предоставляет о себе самостоятельно при заполнении формы обратной связи на Сайте, при использовании других сервисов Сайта, при регистрации (создании учётной записи) на Сайте или в процессе использования услуг, предоставляемых Компанией. Соответствующая информация явно обозначена, к ней, в частности отнесены: фамилия, имя, отчество, адрес электронной почты, должность, наименование организации, в которой работает пользователь, контактный телефон. Иная информация предоставляется пользователем на его усмотрение.
- Компания исходит из того, что пользователь представляет достоверные персональные данные, а также, что пользователь имеет право предоставить персональные данные.
- Компания использует средство 1С Битрикс для сбора сведений об использовании Сайта, таких как частота посещения Сайта пользователями, посещенные страницы и сайта, на которых были пользователи до перехода на данный Сайт. 1С Битрикс собирает только IP-адреса, назначенные пользователю в день посещения данного Сайта, но не имя или другие идентификационные сведения.
- 1С Битрикс размещает постоянный cookie-файл в веб-браузере пользователя для идентификации в качестве уникального пользователя при следующем посещении данного Сайта. Этот cookie-файл не может использоваться никем, кроме 1С Битрикс. Сведения, собранные с помощью cookie-файла, будут храниться на серверах, находящихся в Российской Федерации.
- Компания использует сведения, полученные через 1С Битрикс, только для обработки и хранения персональных данных.
- Компания обрабатывает только те персональные данные, которые необходимы для оказания услуг.
- Персональную информацию пользователя Компании может использовать в следующих целях:
- Идентификация стороны в рамках оказания услуги.
- Рассылка рекламных и/или маркетинговых материалов Компании, рассылка приглашений на мероприятия, конференции, выставки, проводимые и/или организуемые Компанией, проведение телемаркетинговых компаний.
- Проведение статистических и иных исследований, на основе обезличенных данных.
- В отношении персональных данных пользователя сохраняется ее конфиденциальность, кроме случаев обработки персональных данных, доступ неограниченного круга лиц к которым предоставлен пользователем либо по его просьбе.
- Компания вправе передать персональную информацию пользователя третьим лицам в следующих случаях:
- Пользователь предоставил свое согласие на такие действия.
- Передача персональных данных организациям, которые оказывают услуги Компании по рассылке рекламных и/или маркетинговых материалов, организации и проведению мероприятий, конференций, выставок, телемаркетингу, обзвону потенциальных клиентов Компании.
- Передача необходима для достижения целей, осуществления и выполнения функций, полномочий и обязанностей, возложенных законодательством Российской Федерации на Компанию.
- Компания принимает необходимые и достаточные организационные и технические меры для защиты персональных данных пользователя от неправомерного или случайного доступа, уничтожения, изменения, блокирования, копирования, распространения, а также от иных неправомерных действий с персональными данными третьих лиц.
- Компания предпринимает разумные меры для поддержания точности и актуальности, имеющихся у Компании персональных данных, а также удаления устаревших и других недостоверных или излишних персональных данных, тем не менее, Пользователь несет ответственность за предоставление достоверных сведений, а также за обновление предоставленных данных в случае каких-либо изменений.
- Пользователь может в любой момент изменить (обновить, дополнить, блокировать, уничтожить) предоставленную им персональную информацию или её часть, а также параметры её конфиденциальности путем обращения в Компанию.
- Пользователь вправе в любой момент отозвать согласие на обработку Компанией персональных данных путём направления письменного уведомления на электронный адрес: info@keengo.ru с пометкой «отзыв согласия на обработку персональных данных», при этом отзыв пользователем согласия на обработку персональных данных влечёт за собой удаление учётной записи пользователя с Сайта и баз данных Компании, а также уничтожение записей, содержащих персональные данные, в системах обработки персональных данных Компании.
- Пользователь имеет право на получение информации, касающейся обработки его персональных данных Компанией.
- Блог
- Блог о JavaScript
- Определение координат курсора мыши
Keengo · Web Design & Development
© 2010–2023 Все права защищеныКак узнать координаты мыши на экране
Let’s help each other out
- HomeBoard indexOther languagesРусский (Russian)Помощь
- Search
- It is currently 29 Oct 2023, 00:46
- All times are UTC-05:00
Отследить координаты мыши при любом расширении экрана
Помощь в написании скриптов
2 posts • Page 1 of 1
cgFov Posts: 3 Joined: 18 Jan 2017, 21:09
Отследить координаты мыши при любом расширении экрана
Ну вот смотрите , получается как я понимаю мне даже не нужно вычислять координаты считывая их с реестра , достаточно будет указать что я использую координаты относительно окна / скрина / клиента.
Но опять таки , там где MouseMove / MouseClick / MouseDrag — как их определять ?
Я имею ввиду сейчас , к примеру у меня при разрешении экрана это одни координаты скажем 853, 922 , но для любого другого размера экрана эти координаты уже будут бесполезны , вопрос таков , как Вычислить мои координаты т.е 853, 922 только на любых других расширениях ?.garry Posts: 3590 Joined: 22 Dec 2013, 12:50
Re: Отследить координаты мыши при любом расширении экрана
пример-1 / get procent
#Warn #NoEnv SendMode,Input SetWorkingDir,%A_ScriptDir% CoordMode,Pixel,Screen CoordMode,Mouse,Screen SetFormat,float,.2 WA=%A_screenwidth% HA=%A_screenheight% ;x1:=853 ;y1:=922 ;- example 50 % for 1920*1080 x1:=960 y1:=540 ;- procent % xa:=(x1*100)/WA ya:=(y1*100)/HA msgbox, 262208, ,Screenwidth=%wa%`nScreenheight=%ha%`nProcent:`nXa=%xa%`nYa=%ya% return
пример-2 / continue move to procent
#Warn #NoEnv SendMode,Input SetWorkingDir,%A_ScriptDir% CoordMode,Pixel,Screen CoordMode,Mouse,Screen SetFormat,float,.2 WA=%A_screenwidth% HA=%A_screenheight% ;--- procent % --- xa:=50 ya:=50 ;- mouse-move to procent % x :=(wa*xa )/100 y :=(ha*ya )/100 msgbox, 262208, ,Screenwidth=%wa%`nScreenheight=%ha%`nProcent:`nXa=%xa%`nYa=%ya%`n`nX=%x%`nY=%y% MouseMove,%x%,%y%,15 tooltip, Here I'm sleep,3000 tooltip return
AHK: Как узнать координаты мыши в полноэкранном режиме?
Потестировал на Counter Strike: Source этот скрипт (закомментировав строки 13 и 21), в меню игры (DirectDraw) снимаются правильные-текущие координаты, в самой игре (Direct3D) фиксируются координаты всегда равные строго середине экрана.
4 Ответ от ak52ru 2011-10-08 22:23:58
Re: AHK: Как узнать координаты мыши в полноэкранном режиме?
ypppu, либо я не понял как им пользоваться, либо он не наботает, хотя судя по скрипту всё правильно. Почему-то после нажатия ф2 выводится несколько сообщений и не одно в точку не попадает (левый верхний угол экрана — 0 . 0 ведь. У меня такого результата не получилось.)
Grey, отличный вариант, всё получилось.
Всем огромное спасибо.
Я всё же хочу разобраться в 1м скрипте, т.к. он минимализирован и направлен на конкретную задачу. Что я неправильно делаю?
5 Ответ от ypppu 2011-10-08 22:29:13
- ypppu
- Разработчик
- Неактивен
Re: AHK: Как узнать координаты мыши в полноэкранном режиме?
Принцип очень простой. Сколько раз нажмёшь на F1, столько же сообщений вылезет при нажатии F2. В это время и переписывайте их на бумажечку.
Координаты отсчитываются относительно активного окна. Но можно попробовать относительно всего экрана, для этого понадобится добавить всего одну строчку (см. в документации CoordMode).6 Ответ от ravett12 2020-04-09 11:45:23
Re: AHK: Как узнать координаты мыши в полноэкранном режиме?
ypppu пишет:
Вот пример на две горячих клавиши.
i := 0 F1:: i := i+1 MouseGetPos, x%i%, y%i% Return F2:: Loop, %i% MsgBox, % "X" . A_Index . " = " . x%A_Index% . " Y" . A_Index . " = " . y%A_Index%
ypppu пишет:
Принцип очень простой. Сколько раз нажмёшь на F1, столько же сообщений вылезет при нажатии F2. В это время и переписывайте их на бумажечку.
Координаты отсчитываются относительно активного окна. Но можно попробовать относительно всего экрана, для этого понадобится добавить всего одну строчку (см. в документации CoordMode).Большое спасибо за код и за комментарий, как его использовать. Как раз то, что я искал. Мне нужно было узнать координаты курсора в игре.
7 Ответ от ypppu 2020-04-09 19:13:43
- ypppu
- Разработчик
- Неактивен