Szukałem dla modułu, który obsługuje natywne nodejs myszy i klawiatury słuchania i wykonanieNodeJS rodzime myszy i klawiatury Wiązania
znalazłem ten .. https://npmjs.org/package/mouse ale kod źródłowy wygląda to obsługuje tylko przeglądarek.
Szukałem dla modułu, który obsługuje natywne nodejs myszy i klawiatury słuchania i wykonanieNodeJS rodzime myszy i klawiatury Wiązania
znalazłem ten .. https://npmjs.org/package/mouse ale kod źródłowy wygląda to obsługuje tylko przeglądarek.
Można zawinąć Robot Class
dostarczony przez Javę dla rozwiązania wieloplatformowego przy użyciu modułu node-java
.
przykład robocza:
var java = require('java');
var Robot = java.import('java.awt.Robot');
var robot = new Robot();
robot.mouseMoveSync(0, 0);
Czy kiedykolwiek testowałeś to, aby działało? Na OSX Po prostu wypróbowałeś go, uruchamia on ikonę Java w stacji dokującej, ale potem nic nie robi, żadnych pomysłów? – Owen
Przetestowałem to na Arch Linux przy użyciu wersji Java 1.7 (Oracle Java), node.js w wersji 0.10.25 i modułu node-java w wersji 0.3.0. –
@OwenMelbourne Nie pracuję nad projektem node-java. Możesz spróbować napisać prosty program w języku Java, który robi to samo i sprawdzić, czy to działa. Jeśli tak, możesz [otworzyć nowy numer] (https://github.com/joeferner/node-java/issues) na stronie projektu z użyciem kodu, którego użyłeś (kodu Java i Node.js), systemu operacyjnego , numery wersji itp. i sprawdź, czy mogą ci pomóc. –
pracuję nad moduł do wysyłania zdarzeń myszy i klawiatury, RobotJS.
Przykładowy kod:
var robot = require("robotjs");
//Get the mouse position, retuns an object with x and y.
var mouse=robot.getMousePos();
console.log("Mouse is at x:" + mouse.x + " y:" + mouse.y);
//Move the mouse down by 100 pixels.
robot.moveMouse(mouse.x,mouse.y+100);
//Left click!
robot.mouseClick();
Następnie do słuchania używam nw.js:
Spójrz na https://github.com/Loknar/node-macmouse
$ npm zainstalować macmouse
var mouse = require ('macmouse');
mouse.init();
var ptX = 800;
var ptY = 600;
var doThings = function() {
mouse.Place(ptX, ptY);
setTimeout(pressAndHold, 250);
}
var pressAndHold = function() {
mouse.LeftButtonPress();
setTimeout(doDragStuff, 250);
}
var doDragStuff = function() {
ptX += 2;
ptY += 2;
mouse.DragPlace(ptX, ptY);
setTimeout(doDragStuff, 250);
}
doThings();
mouse.quit();
Wypróbuj moduł .
wspierać Windows/Linux/MacOS
'use strict';
const ioHook = require('iohook');
ioHook.on("mousemove", event => {
console.log(event);
/* You get object like this
{
type: 'mousemove',
x: 700,
y: 400
}
*/
});
// For keyboard hook
ioHook.on("keydown", event => { .... });
ioHook.on("keyup", event => { .... });
//Register and start hook
ioHook.start();
Patrzysz na przechwytywanie myszy i keypress wydarzenia w terminalu? –
dobrze jeśli twoje przysłowie mówi o ruchu myszy w nodejs, a następnie robi 'console.log (mouse.x, mouse.y);' then yes – bmatusiak
Czy kiedykolwiek znalazłeś odpowiedź na to pytanie? –