프리 정보 컨텐츠

자바 Swing 사용자 관리 프로그램 화면 구성 코드 본문

JAVA/Swing

자바 Swing 사용자 관리 프로그램 화면 구성 코드

쏜스 2021. 1. 27. 00:43
반응형
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.border.BevelBorder;
import javax.swing.border.TitledBorder;
public class RePractice {
public static void main(String[] args) {
new Swing();
}
}
class Swing extends JFrame {
Container container = getContentPane();
//1. west
JPanel leftPanel = new JPanel();
//1.1 westTop
JPanel westTop = new JPanel();
JPanel panelLabel = new JPanel();
JPanel panelTextField = new JPanel();
JPanel panelJumin = new JPanel();
JLabel labelName = new JLabel("이름:", JLabel.RIGHT);
JLabel labelJumin = new JLabel("주민번호: ", JLabel.RIGHT);
JLabel labelPhone = new JLabel("전화번호: ", JLabel.RIGHT);
JLabel labelAddress = new JLabel("주소: ", JLabel.RIGHT);
JTextField tfName = new JTextField(10);
JTextField tfJumin1 = new JTextField(5);
JTextField tfJumin2 = new JTextField(5);
JTextField tfPhone = new JTextField(10);
JTextField tfAddress = new JTextField(10);
//1.2 westBot
JPanel westBot = new JPanel();
JPanel panelWestSearch = new JPanel();
JPanel panelWestButton = new JPanel();
JPanel panelWestSearchPart = new JPanel();
JTextArea westTa = new JTextArea();
JScrollPane westSp = new JScrollPane(westTa);
JLabel westSearchLabel = new JLabel("검색: ", JLabel.RIGHT);
JTextField westSearchTextField1 = new JTextField(5);
JTextField westSearchTextField2 = new JTextField(5);
JButton westSearchButton1 = new JButton("검색");
JButton westSearchButton2 = new JButton("<<");
JButton westSearchButton3 = new JButton(">>");
//2. rightCheck
JPanel rightPanel = new JPanel();
JPanel rightTopPanel = new JPanel();
JPanel rightButton = new JPanel();
JTextArea rightTa = new JTextArea();
JScrollPane rightSp = new JScrollPane(rightTa);
JLabel rightlabel = new JLabel("<== 이것을 누르면 전체보기가 됩니다.");
JButton rightb1 = new JButton("전체보기");
JButton rightb2 = new JButton("등록");
JButton rightb3 = new JButton("수정");
JButton rightb4 = new JButton("삭제");
JButton rightb5 = new JButton("Clear");
JButton rightb6 = new JButton("저장");
JButton rightb7 = new JButton("로드");
JButton rightb8 = new JButton("종료");
public Swing() {
setTitle("사용자 관리");
setSize(720, 400);
setLocation(400, 400);
init();
start();
setVisible(true);
}
private void init() {
container.setLayout(new BorderLayout());
container.add("West", leftPanel);
container.add("Center", rightPanel);
// leftPanel
leftPanel.setLayout(new GridLayout(2, 1));
leftPanel.add(westTop);
leftPanel.add(westBot);
// 개인정보
westTop.setBorder(new TitledBorder(new BevelBorder(BevelBorder.RAISED), "개인정보"));
westTop.setLayout(new BorderLayout());
westTop.add("West", panelLabel);
westTop.add("Center", panelTextField);
panelLabel.setLayout(new GridLayout(4, 1));
panelLabel.add(labelName);
panelLabel.add(labelJumin);
panelLabel.add(labelPhone);
panelLabel.add(labelAddress);
panelTextField.setLayout(new GridLayout(4, 1));
panelTextField.add(tfName);
panelTextField.add(panelJumin);
panelTextField.add(tfPhone);
panelTextField.add(tfAddress);
// panelJumin
panelJumin.setLayout(new GridLayout(1, 2, 5, 5));
panelJumin.add(tfJumin1);
panelJumin.add(tfJumin2);
// 정보검색
westBot.setBorder(new TitledBorder(new BevelBorder(BevelBorder.RAISED), "정보검색"));
westBot.setLayout(new BorderLayout());
westBot.add("North", panelWestSearch);
westBot.add("Center", westSp);
westBot.add("South", panelWestButton);
panelWestSearch.setLayout(new BorderLayout());
panelWestSearch.add("West", westSearchLabel);
panelWestSearch.add("Center", panelWestSearchPart);
panelWestSearch.add("East", westSearchButton1);
//panelWestSearchPart
panelWestSearchPart.setLayout(new GridLayout(1, 2, 5, 5));
panelWestSearchPart.add(westSearchTextField1);
panelWestSearchPart.add(westSearchTextField2);
//panelWestButton
panelWestButton.setLayout(new FlowLayout());
panelWestButton.add(westSearchButton2);
panelWestButton.add(westSearchButton3);
//rightPanel
rightPanel.setBorder(new TitledBorder(new BevelBorder(BevelBorder.RAISED), "개인정보확인"));
rightPanel.setLayout(new BorderLayout());
rightPanel.add("North", rightTopPanel);
rightPanel.add("Center", rightSp);
rightPanel.add("South", rightButton);
//rightTopPanel
rightTopPanel.setLayout(new BorderLayout());
rightTopPanel.add("West", rightb1);
rightTopPanel.add("Center", rightlabel);
//rightButton
rightButton.setLayout(new FlowLayout());
rightButton.add(rightb2);
rightButton.add(rightb3);
rightButton.add(rightb4);
rightButton.add(rightb5);
rightButton.add(rightb6);
rightButton.add(rightb7);
rightButton.add(rightb8);
}
private void start() {
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}

Swing을 사용하여 사용자 관리 프로그램에 대한 화면구성에 대한 코드에 대한 연습코드이다.

JPanel을 어떻게 Top Down 방식으로 효율적으로 사용할 것인가에 대해서 생각하자.

후에 화면구성한 코드에 대한 이벤트처리도 다루어보도록 하자.

사용자 관리 프로그램

 

반응형
Comments