2016-02-09 59 views
0

所以這個想法是這樣的:構建一個屏幕鍵盤應用程序,可以變成平板電腦,如聯想瑜伽。東西跨平臺,所以我們不必忍受Windows 10.構建NodeJS電子屏幕鍵盤,無法發送KeyStroke

所以我已經安裝NodeJS與電子窗口管理在Linux Mint 17.3。我已經有了窗口和元素都可以正常工作,但是當涉及將按鍵放入另一個應用程序時,我會變得平坦。

到目前爲止,我唯一的想法是使用一個外部java jar,它使用Robot(kbm-robot NodeJS組件)發送系統範圍的擊鍵。首先發送alt和tab,然後是我想要的密鑰,但它需要很長時間(對於擊鍵)並且非常不穩定(失去正確的窗口焦點等)。

有沒有人有更穩定的想法?只接受Linux的解決方案!

如果有人對源代碼感興趣,我會很樂意把它放在某個地方。

回答

0

也許你可以做一個使用node-gyp包:

xdotool key <key> 

哪裏<key>可以a,或F1,或Control+A

Source

編輯:它看起來並不像有一個爲電子無對焦選項了,所以我不知道你會什麼能夠爲實現這一目標做。

+0

xdotool只適用於Linux – computeiro

+0

@computeiro是的,但OP說,Linux只有解決方案很好 – somebody

+0

是的,只有Linux才行。有些東西與這個不起作用,但現在我不記得了。 – dakotapearl

0

您可以嘗試替代建議的'kbm-robot'。它是一個非常小的,仍然是跨平臺的庫,可以將密鑰發送到稱爲「節點密鑰發送方」的操作系統。

npm install --save-dev node-key-sender安裝。

和發送鍵使用鍵盤:

var ks = require('node-key-sender'); 
ks.sendKey('a'); 

檢查出其他鍵的文檔頁面:https://www.npmjs.com/package/node-key-sender

+0

太好了,我會檢查一下。謝謝你的想法! – dakotapearl