본문으로 바로가기

java swing gui 샘플

category 카테고리 없음 2023. 5. 18. 08:32
반응형

아래는 총 3개의 값을입력받는 텍스트필드가 있는 자바 샘플코드입니다

버튼을 누르면 입력받은 값들을 textArea에 표출합니다

import javax.swing.*;
import java.awt.*;
import java.util.logging.Logger;

public class SwingExample {
    private static final Logger logger = Logger.getLogger(SwingExample.class.getName());

    private JFrame frame;
    private JPanel panel;
    private JTextField textField1, textField2, textField3;
    private JTextArea textArea;
    private JScrollPane scrollPane;
    private JButton button;

    public SwingExample() {
        // 프레임 생성
        frame = new JFrame("Swing Example");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 패널 생성
        panel = new JPanel();
        panel.setLayout(new GridLayout(5, 2));

        // 텍스트 필드와 라벨 생성
        textField1 = new JTextField(10);
        textField2 = new JTextField(10);
        textField3 = new JTextField(10);

        panel.add(new JLabel("Text Field 1:"));
        panel.add(textField1);

        panel.add(new JLabel("Text Field 2:"));
        panel.add(textField2);

        panel.add(new JLabel("Text Field 3:"));
        panel.add(textField3);

        // 텍스트 에어리어 생성
        textArea = new JTextArea(5, 20);
        textArea.setEditable(false);
        scrollPane = new JScrollPane(textArea);
        panel.add(scrollPane);

        // 버튼 생성
        button = new JButton("Submit");
        panel.add(button);

        // 액션 리스너 추가
        button.addActionListener(e -> {
            String input1 = textField1.getText();
            String input2 = textField2.getText();
            String input3 = textField3.getText();

            String logMessage = "Input 1: " + input1 + ", Input 2: " + input2 + ", Input 3: " + input3;
            logger.info(logMessage);
            textArea.append(logMessage + "\n");
        });

        // 패널을 프레임에 추가
        frame.add(panel);

        // 프레임 크기 지정 및 보이게 설정
        frame.setSize(500, 300);
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        new SwingExample();
    }
}

위의 간단한 swing gui를 응용하여 복잡한 윈도우용 툴을 만들 수 있습니다.

반응형

 

반응형