개발

JComboBox 와 KeyListener

에드몽단테스 2008. 3. 10. 16:55
JComboBox 에 글을 입력 후 엔터키를 누르면 이벤트를 적용시키려고 했는데 안됐다.

JComboBox box = new JComboBox();
box.addKeyListener(new KeyAdapter(){
    public void keyReleased(KeyEvent e){
        System.out.println("메롱");
    }
});


살펴보니 JComboBox는 다음과 같이 3가지로 구성되어 있다.


그러므로 콤보박스에 키리스너를 걸려면 텍스트 컴포넌트에 리스너를 걸어야 한다.

box.getEditor().getEditorComponent().addKeyListener(new KeyAdapter(){
    public void keyReleased(KeyEvent e)
    {
        if(e.getKeyCode() == KeyEvent.VK_ENTER)
        {
            System.out.println("메롱");              
        }
    }
});

반응형