캣티
10
2018-12-06 20:45:10
3
143

[java] 여러 요소에 대한 동일한 클릭 이벤트처리 하는법 <초보주의>


안녕하세요. 컴공과 재학중인 대학생입니다. 

자바 프로젝트 만들다가   

(후술한 코드 참조) 자바에서 다른 요소에 대해  동일한 코드를 실행할 수 있는 방법이 있나 해서

질문 올리게 되었습니다. 아직 부족한 점이 많은데 고수님들 조언 부탁드립니다.


   private void btnSigninActionPerformed(java.awt.event.ActionEvent evt) {                                          
        login();
    }                                         

    private void txtIDKeyPressed(java.awt.event.KeyEvent evt) {                                 
        if (evt.getKeyCode()== KeyEvent.VK_ENTER){
            login();
        }
    }                                

    private void txtPWKeyPressed(java.awt.event.KeyEvent evt) {                                 
        if (evt.getKeyCode()== KeyEvent.VK_ENTER){
            login();
        }
    }                                

    private void btnSigninKeyPressed(java.awt.event.KeyEvent evt) {                                     
        if (evt.getKeyCode()== KeyEvent.VK_ENTER){
            login();
        }
    }                 



0
0
  • 답변 3

  • jslovers
    1k
    2018-12-06 23:16:05
    public void actionPerformed(ActionEvent e) {
        Object source = e.getSource();
    }
    -1
  • 캣티
    10
    2018-12-07 16:21:44

    저 코드를 추가하면 되나요? 모든 버튼에 대한 처리가 login()인 것은 아니고

    다른 이벤트 처리를 연결하는 버튼도 있는데요.

    0
  • OkyDoky
    1k
    2018-12-10 00:26:47

    스윙으로 하시는 프로젝트 중이신건가...

    만약 스윙으로 짜시는 게 맞다면 참고되셨으면 좋겠네요

    public class TestMain extends JFrame implements ActionListener {
    
    	// 입력창
    	JTextField	jtfId, jtfPwd;
    	
    	// 검색 및 작업Button
    	JButton		jBtnSign;
    	
    	public TestMain() {
    		super("TestMain");
    		... 생략 ...
    	}
    	
    	@Override
    	public void actionPerformed(ActionEvent e) {
    		Object btn = e.getSource();
    		
    		/** 로그인 버튼을 클릭한다면 */
    		if (btn == jBtnSign) {
    			login();
    		}
    	}
    	
    	/** 로그인 */
    	private void login() {
    		// 입력된 내용을 읽어온다.
    		String id  = jtfId.getText();
    		String pwd = jtfPwd.getText();
    		
    		// 아이디와 비밀번호 검증
    		// 아이디와 비밀번호가 일치한다면 로그인 프로세스 진행
    		
    	}
    }


    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.