2010-11-23 95 views
2

我一直在努力這個太長。當我完成了一個jTextField的輸入後,當我點擊文本框外的窗口時,我想讓它失去焦點。我無法弄清楚如何做到這一點。我能做的最好的轉移焦點是下一個文本框。想要jTextField失去焦點,當我點擊主窗口

回答

2

爲什麼要失去焦點嗎?我確信有更好的設計,然後強制用戶單擊窗口以使文本字段失去焦點。

無論如何,當另一個組件獲得焦點時,文本字段將失去焦點。默認情況下,面板不可聚焦,因此點擊它不會導致文本字段失去焦點。使面板可聚焦:

panel.setFocusable(true); 

當然現在當用戶使用Tab鍵,面板現在將包括在Tab順序。這是另一個原因,這似乎是一個糟糕的設計。

+0

我不知道如何在netbeans中做到這一點。我已經檢查了可重點屬性,但它似乎沒有做任何事情。我可以嘗試在面板創建後插入代碼。我想在編輯它之後從textfield b/c中獲得焦點,我希望能夠使用我的鍵盤快捷鍵「p」來激活一個按鈕。我想我可以在任何其他焦點失去焦點時給予按鈕焦點。 – 2010-11-23 20:45:11

0

考慮你的類繼承的JFrame:

JTextField jTextField1 = new JTextField(); 

addMouseListener(new java.awt.event.MouseAdapter() { 
      public void mouseClicked(java.awt.event.MouseEvent evt) { 
       jTextField1.setFocusable(false); 
      } 
     }); 

希望這有助於...