我有這個代碼,我設計了一個editable JComboBox
來收聽我的keyPressed
事件,並顯示一條消息,說明按下了按鍵。但我不知道爲什麼這不起作用。 作爲初學者,我可能在邏輯/概念上出錯。可編輯的JComboBox KeyPressed不工作
因此,我會請求關於如何構建代碼的建議,以便它能夠正常工作。
import javax.swing.*;
import java.awt.*;
public class testEJCBX extends JFrame {
JComboBox jcbx = new JComboBox();
public testEJCBX() {
super("Editable JComboBox");
jcbx.setEditable(true);
getContentPane().setLayout(new FlowLayout());
getContentPane().add(jcbx);
jcbx.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt)
{
jcbxKeyPressed(evt);
}
});
setSize(300, 170);
setVisible(true);
}
private void jcbxKeyPressed(java.awt.event.KeyEvent evt) {
JOptionPane.showMessageDialog(null, "Key Pressed");
}
public static void main(String argv[]) {
new testEJCBX();
}
}
'KeyListener'是一個糟糕的選擇一般,但在你的情況下,'KeyEvent's AREN」被髮送到'JComboBox',而被髮送到作爲'JComboBox'的編輯器的組件。你試圖達到什麼目標? – MadProgrammer
我只是想在'Editable JComboBox'內按下任何按鍵時收到一條消息。 – mustangDC
該怎麼辦?或者更確切地說,我應該如何實現這個目標? – mustangDC