我有一個JFrame
,上面有三個JButton。我已將txtSearch
(一個JTextField
組件)設置爲在加載JFrame
時具有焦點。其中一個按鈕被設置爲默認按鈕。這是我的代碼:當輸入鍵被按下時,JFrame中的默認按鈕不會觸發
private void formWindowOpened(java.awt.event.WindowEvent evt)
{
// btnRefresh.setMnemonic(KeyEvent.VK_R); // Even if this line
// is not commented, but
// still the event wouldn't fire.
this.getRootPane().setDefaultButton(btnRefresh);
}
當它加載,按鈕剛選擇,但它確實沒有當輸入被按下鍵。我如何正確實施它?
btnRefresh.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnRefreshActionPerformed(evt);
}
});
private void btnRefreshActionPerformed(java.awt.event.ActionEvent evt) {
JOptionPane.showMessageDialog(this, "Pressed!");
// Other codes here (Replace by JOptionPane)
}
我發現最簡單的方法是調用requestFocusInWindow()之後,可以看到JFrame設置一個默認按鈕。希望這可以幫助某人。 – GeriBoss 2014-07-11 11:23:56