Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- DB
- socket
- 오라클
- Oracle
- 생성자
- 멀티쓰레드
- db버퍼캐시
- 서버
- 컬렉션프레임워크
- 메소드
- 친절한 sql튜닝
- 친절한 SQL 튜닝
- 상속
- 클래스
- SQL
- Spring
- Swing
- 인스턴스
- SQLP
- Undo
- 인덱스 튜닝
- 클라이언트
- 인덱스
- java
- 카카오코딩테스트
- DBA
- 깃허브
- springboot
- 백준
- 자바
Archives
- Today
- Total
프리 정보 컨텐츠
자바 Swing 사용자 관리 프로그램 화면 구성 코드 본문
반응형
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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