如何在等待用户输入时暂停GUI?

时间:2015-12-15 08:16:13

标签: java

我正在做一个小型的聊天室,而且我在这一小段代码中遇到了一个问题。我不确定如何在用户设置输入之前暂停GUI循环。我一直在使用注释掉的部分代码暂停它,但显然我不能让GUI上的用户与System.in进行交互。

  while(username == null)
  {
     gui.setChat("  Hello! Please enter the usename you'd like to use for the duration of the chat!\n");

     //gui.setChat("  Press Any Key To Continue...\n");
     //new java.util.Scanner(System.in).nextLine();

     username = gui.getInput();
  }

1 个答案:

答案 0 :(得分:0)

简短回答不要暂停但是如果你坚持,你将不得不采取多线程方法或使用JOptionPane阻止UI,并注意睡眠和唤醒锁定。这是一个做样本的样本

 JFrame frame = new JFrame(); 
            String bigList[] = new String[30];

            for (int i = 0; i < bigList.length; i++) {
              bigList[i] = Integer.toString(i);
            }

            JOptionPane.showInputDialog(
                    frame, 
                    "Select options", 
                    "List", 
                    JOptionPane.PLAIN_MESSAGE,
                    null,
                    bigList,
                    "none");
            }