2016-07-20 5 views
0

Ich baue eine Elektronen-App für Windows-Tablets für einen Kunden (Surface Pro). Die Bildschirmtastatur funktioniert wunderbar für die meisten Zwecke, aber ich habe einige Anwendungsfälle, in denen der Benutzer auf "neu" klickt und ich einen Dialog mit einer Standardtexteingabe (wie Name) anzeige.Electron - Display Bildschirmtastatur (Windows)

In diesem Szenario möchte ich nur die Bildschirmtastatur aufrufen, wenn wir im Tablet-Modus sind, anstatt den Benutzer zu zwingen, erneut auf den Namen Textfeld zu klicken. Es scheint, dass selbst wenn ich das Textfeld fokussiere, die Tastatur nur erscheint, wenn der Benutzer auf das Textfeld klickt.

Gibt es trotzdem in Elektron, um das Verhalten der Bildschirmtastatur manuell auszulösen?

Antwort

1

Etwas, das ich verwendet habe, läuft die Tabtip.exe von der BrowserWindow.

Dies sollte in Windows 7 und Windows 10 (mit der Touch-Tastatur) funktionieren. Obwohl ich bemerkt habe, funktioniert Tabtip nicht in Windows 10, wenn es keinen Touchscreen gibt.

const exec = require('child_process').exec; 

function showTouchKeyboard() { 
    exec('start /d "C:\\Program Files\\Common Files\\microsoft shared\\ink" TabTip.exe', (error, stdout, stderr) => { 
     if (error) { 
      console.error(error); 
      return; 
     } 
    }); 
}