2013-03-05 8 views
7

Ich habe für eine native NodeJS Modul suchen, die Maus und die Tastatur Hör- und AusführungNodeJS nativen Maus und Tastatur Bindungen

unterstützt finde ich diese .. https://npmjs.org/package/mouse aber der Quellcode sieht aus wie es nur den Browser unterstützt.

+0

Sie suchen Maus- und Tastendruck-Ereignisse zu erfassen? –

+0

Nun, wenn Sie sagen, dass Sie in nodejs auf die Mausbewegung hören und dann 'console.log (mouse.x, mouse.y) machen;' dann ja – bmatusiak

+0

Haben Sie jemals eine Antwort darauf gefunden? –

Antwort

3

Sie können das von Java bereitgestellte Robot Class für eine plattformübergreifende Lösung mit dem node-java-Modul einbinden.

Arbeitsbeispiel:

var java = require('java'); 

var Robot = java.import('java.awt.Robot'); 
var robot = new Robot(); 

robot.mouseMoveSync(0, 0); 
+0

Haben Sie das jemals getestet, um es zum Laufen zu bringen? Auf OSX Probieren Sie es aus, es startet ein Java-Icon im Dock, aber dann tut nichts, irgendwelche Ideen? – Owen

+0

Ich testete es auf Arch Linux mit Java-Version 1.7 (Oracle Java), node.js Version 0.10.25 und dem Knoten-Java-Modul Version 0.3.0. –

+0

@OwenMelbourne Ich arbeite nicht am Knoten-Java-Projekt. Sie können versuchen, selbst ein einfaches Java-Programm zu schreiben, das das Gleiche tut und sehen, ob das funktioniert. Wenn dies der Fall ist, können Sie [neues Problem] (https://github.com/joeferner/node-java/issues) auf der Projektseite mit dem von Ihnen verwendeten Code (Java & Node.js-Code) und dem Betriebssystem öffnen , Versionsnummern usw. und sehen, ob sie Ihnen weiterhelfen können. –

10

Ich habe für das Senden von Maus- und Tastaturereignisse auf einem Modul arbeitet, RobotJS.

Beispielcode:

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(); 

Dann für das Hören Ich benutze nw.js:

https://github.com/nwjs/nw.js/wiki/Shortcut

1

Werfen Sie einen Blick auf https://github.com/Loknar/node-macmouse

npm macmouse

$ installieren

Beispiel.js

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(); 
1

Versuchen Sie iohook Modul.
Es unterstützt im Terminal 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(); 
Verwandte Themen