java - On Screen keyboard in Windows 8 tablet -


using code snippet, starting on screen keyboard process through focus gained event java swings.

string sysroot = system.getenv("systemroot"); process proc = runtime.getruntime().exec("cmd /c " + sysroot + "/system32/osk.exe"); 

when focus lost, key board should close. used proc.destroy() implement that. implementation behaving abnormally in windows 8 tablet. opening key board on focus, not closing when focus lost. running program eclipse.

the same implementation worked windows 7 desktop. change is, did not specify cmd /c in windows 7. win 8, not opening key board, if don't give cmd /c

please suggest solution this.

this worked me (java & eclipse rcp):

    text.addfocuslistener(new focuslistener()     {         @override         public void focuslost(focusevent arg0)         {                 logutil.loginfo("closing osk");                  try                 {                     if(settings.getboolean(settings.osk_usetabtip)) {                         runtime.getruntime().exec("cmd /c taskkill /im tabtip.exe");                     } else {                         runtime.getruntime().exec("cmd /c taskkill /im osk.exe");                     }                 }                 catch (ioexception e)                 {                     logutil.logerror(e.tostring());                 }         }          @override         public void focusgained(focusevent arg0)         {             try             {                 string sysroot = system.getenv("systemroot");                  if(settings.getboolean(settings.osk_usetabtip)) {                     logutil.loginfo("opening tabtip");                     processbuilder pb = new processbuilder("c:/pathtotabtip/tabtip.exe");                     pb.start();                 } else {                     logutil.loginfo("opening osk");                     processbuilder pb = new processbuilder(sysroot + "/system32/osk.exe");                     pb.start();                 }             }             catch (exception e)             {                 logutil.logerror(e.tostring());             }         }     }); 

Comments

Popular posts from this blog

image - ClassNotFoundException when add a prebuilt apk into system.img in android -

I need to import mysql 5.1 to 5.5? -

Java, Hibernate, MySQL - store UTC date-time -