2010-03-12 3 views
0

Java에서 Swing 사용하기 라디오 버튼, 텍스트 필드 등을 포함하는 양식을 작성했습니다. 마지막에는 "제출"버튼이 있습니다.Java로 양식을 처리하는 방법은 무엇입니까?

이제 사용자가 제공 한 정보를 프로그램에 보내려합니다. 어떻게해야합니까? 거기에 관한 좋은 자습서가 있습니까?

PHP와 비슷합니까? (필자는 PHP로하는 법을 알고 있기 때문에 묻습니다. 혼란을 피하기 위해 웹 애플리케이션을 프로그래밍하지 말아야 할 필요가 있습니다).

답변

4

스윙의 데이터 처리는 일반적인 웹 요청/응답 패러다임과 다른 방식입니다.

To 알아두면 좋을지 모르지만, HTML 페이지의 Javascript 동작과 유사합니다. 사용자가 작업을 수행 할 때마다 하나 이상의 이벤트가 전송되고 응용 프로그램 개발자가 이에 따라 응용 프로그램 내용을 업데이트 할 수 있습니다.

버튼에 ActionListener를 등록하면 단추를 클릭 할 때마다 호출됩니다. 그러면 원하는 작업을 수행 할 수 있습니다.

하지만 그게 전부는 아닙니다!

구성 요소가 키보드 중심이거나 마우스를받을 때마다 이벤트가 전송되고 키가 쓰여지거나 위젯의 모델이 업데이트 될 때도 이벤트가 전송됩니다.

나는 Swing tutorial (1 개월 만에 할 수있는 것보다 더 상세한 내용으로 다이빙)과 같은 문서를 읽으라고 제안합니다.

2

"프로그램에 보내기"란 무엇을 의미하는지 확실히 모릅니다. 당신은 프로그램에 있으므로이 양식을 렌더링하는 대화 상자가 있다고 가정합니다. 대화 상자에 데이터를 저장하는 데 사용할 개체를 전달하기 만하면됩니다. 예를 들어, 대화 상자의 생성자는 인수를 취할 수 있습니다.

public class MyDialog extends JPanel { 

    private UserInfo userInfo; 

    private JTextField name; 

    /** 
    * The main area of the dialog. 
    */ 
    protected JPanel panel; 

    public MyDialog(UserInfo userInfo) { 
    this.userInfo = userInfo; 
    } 

    public showDialog() { 

    // Some code to create the form which it looks like you already know how to do 

    // Create a name field 
    JLabel nameLabel = new JLabel("Name:"); 
    panel.add(nameLabel); 

    JButton submit = new JButton("Submit"); 
    submit.addActionListener(new ActionListener() { 
     public void actionPerformed (ActionEvent event) 
     { 
     this.userInfo.setName(name.getText().trim()); 
     } }); 
     panel.add(submit);  
    } 
} 
관련 문제