java - 选择第二个文本字段后 Runtime.getRuntime().exec 不起作用

标签 java javafx fxml

我正在开发这个登录页面,它有 2 个文本字段和一个按钮。每当我单击第一个文本字段时,屏幕键盘 (osk.exe) 就会弹出,但是当我单击第二个文本字段时,屏幕键盘似乎不会聚焦在第二个文本字段上,这意味着我无法在第二个文本字段上输入任何内容,所以我尝试做的是停止 osk.exe 进程并在选择第二个文本字段时再次启动它,但第一次单击时 osk 似乎没有弹出,我必须单击第二次弹出它,所以这意味着每次我点击文本字段,它都会弹出并依次关闭OSK,有人可以帮助我吗?我的两个文本字段在 JavaFx 场景生成器中具有以下 onClick 方法:

public void osk (){

    try
    {
        killProcess();
        Runtime.getRuntime().exec("c:\\Temp\\osk.exe");

    }
    catch ( Exception ex )
    {
        ex.printStackTrace();
    }

                    }



 public static void killProcess() throws Exception {

    Runtime rt = Runtime.getRuntime();
    rt.exec("taskkill " + "osk.exe");

    Runtime.getRuntime().exec( "taskkill /IM " + "osk.exe" );

 }

编辑:我添加了更多描述,很抱歉没有早点包含它。

最佳答案

taskkill 是一个 Windows cmd 命令。我想你可以尝试用 rt.exec("cmd.exe/c taskkill "+ "osk.exe"替换 rt.exec("taskkill "+ "osk.exe"); );

关于java - 选择第二个文本字段后 Runtime.getRuntime().exec 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22801059/

相关文章:

java - 如何为 TreeCell child 设计样式?

Javafx 组件应始终位于 AnchorPane 的中心

css - java fx 菜单栏上的文本

java - 使用场景构建器中创建的 fxml 文件从 java 添加图像

Java - 找不到构造函数?

java.lang.NullPointerException 浓度游戏

java - 在 JBoss 中使用多个登录模块

javafx - 从零开始的甘特图

javafx - 在 Javafx 中向剪切图像添加照明效果

JavaFX - 检测并突出显示被拖入的表列