2012-12-03 3 views
1

메서드 호출로 이벤트를 트리거 할 수 있습니까? (클릭 수와 함께). 아래의 은 샘플 코드입니다. 그것은 작동 코드가 아니며, 내가 상상 한 방식을 보여줍니다.가능 : JButton 클릭이 아닌 메서드 호출을 통해 JButton 이벤트 트리거?

import java.awt.event.*; 
import javax.swing.*; 

public class Game extends JFrame 
{ 

    JButton leftButton = new JButton("left"); 
    JButton rightButton = new JButton ("right"); 

    private JButton Move(String moveClickString) 
    { 
     JButton chosenButton = new JButton(); 

     if (moveClickString.equals("left")) 
     { 
      chosenButton = leftButton; 
     } 
     if (moveClickString.equals("right")) 
     { 
      chosenButton = rightButton; 
     } 
     return chosenButton; 
    } 

    public void actionTrigger(JButton buttonClick) 
    { 
     buttonClick.addActionListener(new ActionListener() 
     { 
      public void actionPerformed(ActionEvent e) 
      { 
       Object buttonPressed = e.getSource(); 

       if (buttonPressed == leftButton); 
       { 
        //do left 
       } 

       if (buttonPressed == rightButton); 
       { 
        //do right 
       } 
      } 
     }); 
    } 

    public static void main(String[] args) 
    { 
     Game game = new Game(); 
     game.setVisible(true); 

     game.actionTrigger(game.Move("left")); //some way to execute things?. 
    } 
} 

사물을 실행하는 방법이 있습니까?

내가 직면하고있는 문제를 풀려고 할 때 실제로이 생각이 내 마음에 떠오른다. 나는 그것에 대해 question을 별도로 게시했다. (이전이 question을 게시하는 것이 관련)

은 : 서버 - 클라이언트의 관점에서 나는 이것을 달성하고자 :

  • 클라이언트가 GUI에서 버튼을 클릭하면.

  • 문자열 'A'가 서버 측에 전송됩니다.

  • 서버가 클라이언트에서 문자열 'A'를 수신하면 'methodA'를 호출합니다. methodA 호출
    은 서버 측 GUI에 영향을줍니다. 따라서 클라이언트 및 서버 GUI는 그에 따라 업데이트됩니다.

고맙습니다.

답변