JButton을 JLabel로 바꾸고 싶습니다. JLabel을 클릭 할 때 코드가 어떤 동작을 수행하기를 원합니다. 내가하는 JButton했다 때JLabel에 액션 리스너를 추가 할 수 있습니까?
나는 버튼 클릭을 처리하기 위해 액션 청취자를 사용 :
내가myLabel
에 의해
myButton
내가 이클립스에 다음과 같은 오류 메시지가있어 교체
myButton.addActionListener(new clicksListener(arg1,this))
:
을 메서드 addActionListener (ChipsListener)가 JLabel 유형에 대해 이 정의되지 않았습니다.
그러나 JLabel에 클릭 핸들러를 부착 할 수 있어야한다는 것을 알고 있습니다. 아무도 그것을 어떻게 할 수 있는지 알고 있습니까?
여기에 논리가 없습니다. 모든 Component가'MouseListener' (임의의 참조)를 추가 할 수 있다는 것을 의미합니까? 그리고 어떤 종류의 위젯이 ActionListener를 추가 할 수 있습니까? – Tony
예,'addMouseListener()'메소드는'Component'에 정의되어 있습니다. 이 클래스는, 마우스가 컴퍼넌트에 들어갔을 때, 또는 컴퍼넌트 내에서 버튼이 밀렸을 때, 또는 컴퍼넌트 내에서 버튼이 밀린 후에 해방되었을 때,'MouseEvent' 객체를 생성합니다. Component를 확장하는 모든 클래스는 이러한 이벤트를 수신하는 여러 개의 MouseListener 참조를 가질 수 있습니다. 'addActionListener()'는'AbstractButton'에 정의되어 있으며 버튼을 누를 때'ActionEvent' 객체를 생성합니다. 'JLabel'은'AbstractButton'을 확장하지 않으므로'ActionEvent' 객체를 생성하지 않습니다. 'JButton'을 시도하십시오. –