【问题标题】:How to hide the JWindow when I press Enter key?当我按 Enter 键时如何隐藏 JWindow?
【发布时间】:2011-11-11 02:40:21
【问题描述】:

我有一个框架和一个 JWindow。在我的框架中,我有一个文本字段,每当我在该字段中输入内容时,该窗口都会出现在文本字段下方的建议列表。我使用了一个按键监听器。 当我在窗口中的建议列表上按回车键时,我选择的单词会进入该字段。

现在的问题是窗口仍然出现,我希望窗口在我选择一个单词时消失。

有人对此有什么想法吗?

谢谢..

【问题讨论】:

  • 你的意思是像window.dispose(); 吗?

标签: java swing autocomplete intellij-idea


【解决方案1】:

您可以将所选项目发送到文本框,对吗?我假设您已经使用了某种事件侦听器来做到这一点。在操作方法结束时,将窗口的可见性设置为 false。 Swaranga 的方法应该行得通。

【讨论】:

  • 如果您在文本字段中添加如何显示所选项目的代码,也许我可以为您提供更多帮助。
【解决方案2】:

试试这个:

jWindowInstance.addKeyListener(new KeyAdapter() {
   public void keyReleased(KeyEvent e) {
      if(e.getKeyCode() == KeyEvent.VK_ENTER) {
         jWindowInstance.dispose(); // Release resources

         // OR
         jWindowInstance.setVisble(false); // Just hide the window so you can reuse it afterwards
      }
   }
});

【讨论】:

    【解决方案3】:

    我假设您在那里有一个确定按钮,在这种情况下,您应该能够在窗口的根窗格上设置默认按钮,例如

    window.getRootPane().setDefaultButton(okBtn);
    

    【讨论】:

    • @Mikel 我会这样做(如果你没有确定按钮,我会做一个)
    【解决方案4】:

    试试这个:

    jWindowInstance.setVisible(false);
    

    【讨论】:

      猜你喜欢
      • 2011-05-03
      • 1970-01-01
      • 2011-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-13
      • 1970-01-01
      • 2012-06-13
      相关资源
      最近更新 更多