我已将问题简化为以下代码。
运行时,您会看到一条消息。
如果您使用鼠标并单击“确定”,则可以继续输入新命令。
如果您按键盘上的“enter”或“space”,键盘输入就会中断。即,人们可以在命令行中输入内容,但“返回”不会执行任何操作。
import java.io.IOException;
import java.util.Scanner;
import javax.swing.JOptionPane;
public class MainClass {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
while(true){
System.out.println("hello, please enter your command");
String UsrCmd = sc.nextLine();
System.out.println("you tyep: " + UsrCmd);
JOptionPane.showMessageDialog (null,"Dialog Text","Title Text",JOptionPane.QUESTION_MESSAGE);
//Work around for Linux users:
//Runtime.getRuntime().exec("/usr/bin/zenity --info --text='hello'");
}
}
}
(我是 S.o.f 的新手。对于错误,我提前表示歉意。请纠正我的错误。谢谢)。
JR 1.7 Fedor 20 64 位。
最佳答案
它应该正常工作,因为你没有任何可以停止 while 执行或中断的语句;命令。不过,我建议您使用 JDK(java 开发工具包)而不是 JRE。
关于java - 如果按下键盘,JOptionPane 会中断扫描仪输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20887961/