2013-10-02 6 views
0

여러 개의 JButton이있는 게임을위한 메뉴를 만들고, mouseListener에 대한 새로운 클래스를 만들고 mouseReleased를 사용하여 코드를 실행 한 다음 해당 클래스를 JButton l에 추가합니다. 그래서 내 질문에 만약 내가 두 번째 버튼을 다른 코드를 실행시켜야한다면, 새로운 클래스를 만들 필요가있다. 또는 Input 클래스에서 그것을 할 수있는 방법이다. 첫 번째 버튼에 대한 코드가있다.하나의 mouseListener 사용하기

JButton play = new JButton("Play"); 
    play.setBounds(299, 80, 170, 70); 
    play.addMouseListener(new Input()); 
    panel.add(play, null); 

이것은 내 mouseListener 코드입니다.

public void mouseReleased(MouseEvent e) 
{ 
    JFrame gameWindow = new JFrame(""); 
    gameWindow.setSize(Frame.windowWidth, Frame.windowHight); 
    gameWindow.add(new Draw()); 
    gameWindow.setVisible(true); 
    gameWindow.setLocationRelativeTo(null); 
} 
+1

왜이 버튼에 마우스 리스너를 추가하는 방법은 무엇입니까? –

+0

@FooBarUser 당신은 무엇을 의미합니까, 그 밖에 내가 무엇을해야 했습니까? – user2457344

+0

mouseListener를 구현하는 다른 클래스를 만들거나 getSource를 사용하여 누가 이벤트 소유자인지 평가할 수 있습니다. 또한 리스너 클래스에 인수를 추가하여 이벤트에서 수행 할 작업을 알 수 있고 대신에 2 개의 인스턴스가 필요합니다. 2 개의 클래스. – porfiriopartida

답변

0

이 트릭을 수행해야합니다

play.addActionListener(new ActionListener() {   
     public void actionPerformed(ActionEvent e) { 
     //Your Code Here  
     } 
    }); 
+0

예, 그렇다면 OP가 그것을 사용해야하는 이유 ... 복사 및 붙여 넣기 코드가 많은 개발자에게 문제가 될 수 있습니다.) – MadProgrammer

+0

제안 해 주셔서 감사합니다.하지만 porfiriopartida 도움말과 함께 사용하고 .getSource를 사용하여 쉽게 파악하고 저장합니다. 약간의 코드. – user2457344