簡體   English   中英

從電子應用程序發送密鑰?

[英]Send keys from an electron application?

我唯一找到的與此相關的是sendInputEvent

有幾個問題。

  1. 似乎只能從主窗口線程中調用它。 當有人單擊應用程序中的按鈕時,我需要發生這種情況。

  2. 即使從主窗口線程來看,它似乎也根本不起作用。 例如,這似乎沒有任何作用:

碼:

setTimeout(function() {
    win.webContents.sendInputEvent({keyCode: 'Tab', type: 'keyDown', modifiers: ['alt']});
}, 3000);
  1. 我也想在alt-tab 之后發送一些按鍵,並且API表示該功能僅在窗口聚焦時起作用。

看起來RobotJS 可能可以解決此問題,但是對於其他語言中的一行代碼(例如SendKeys.Send )來說,似乎有些笨拙。 而且看起來它需要手動構建。 總而言之,如果可能的話,我試圖將絕對依賴項的數量減到最少。

有任何想法嗎?

我同意RobotJS是完成這項任務的野獸,相反,我會去找node-key-sender

我也不會發送ALT-TAB按鍵,而是使用window.hide()window.minimize 您可以在此處閱讀更多內容: Electron API文檔,用於minimum()和hide()

它具有您需要的所有功能,即使您從電子窗口中散焦后也可以使用。 唯一的警告是它在后台使用Java Runtime

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM