java - 如果按下键盘,JOptionPane 会中断扫描仪输入

标签 java swing keyboard java.util.scanner joptionpane

我已将问题简化为以下代码。

运行时,您会看到一条消息。

如果您使用鼠标并单击“确定”,则可以继续输入新命令。

如果您按键盘上的“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/

相关文章:

java - 您如何在 UML(类图)中将集合(arrayList、vector 等)编写为属性?

javascript - JQuery 虚拟键盘和 Datatables.js 搜索过滤器框未根据用户输入更新

java - (AdapterView<?> parent, View view, int position, long id) <?> 符号有什么作用?

java - 无论如何告诉编译器通过注释保留变量名?

java - 使用 JFreeChart 库在 awt.Image 上绘制轴

Java Swing SearchBox 模型

iphone - 使用 DecimalPad 时如何关闭键盘

c# - SendKeys.Send 并关闭键修饰符

Java 正则表达式 : trouble extracting word phrase

java - 我想在 JPanel 中放置一个 JApplet