(JAVA) 자바의 GUI 스윙!!
자바에서 GUI를 구성해주도록 도와주는 클래스가 있는데 바로 스윙이다.
사용 방법은 간단하다. JFrame을 상속받아서 사용한다.
먼저 구성에 대해 간단히 소개를 하자면
파란색이 컴포넌트
빨간색이 컨테이너다.
먼저 적당한 사이즈로 만들어야하는데, 상속받은 클래스 안에 setSize(가로,세로); 를 입력하면 된다.
그리고 화면에 표시하기위해 setVisible(true);를 해주면 된다. 또 닫기 버튼을 클릭했을 때의 설정을 해줘야하는데
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 이런식으로 가능하다.
버튼을 만들 때는 setVisible 위쪽에다 설정을 해줘야 하는데
setLayout(new FlowLayout());
JButton button = new JButton("버튼");
this.add(button);
으로 가능하다. 버튼객체를 생성 후 add를 꼭 해줘야 프레임안에 들어가니 신경써서 잊지않아야 한다.
setLayout(new FlowLayout()); 이부분은 JFrame은 Borderlayout이 기본 설정인데, Borderlayout일 경우
버튼이 저렇게 작게 나오지 않고 화면에 꽉차게 나오기 때문에 변경하기 위함이다.
다음으로는 BorderLayout 기준으로 버튼을 만들게 되는 경우 나올 수 있는 버튼의 종류이다.
작성된 코드다.
FlowLayout
말 그대로 흐름대로 나열하는 방식이다. 하지만 보는것 과 같이 그냥 셋팅을 하면 가운데부터 생기게 되는데 다음 줄부터는 왼쪽이나 오른쪽으로 정렬되어 나오게 가능하다.
다음은 버튼을 알아볼 것이다. 기본적으로 JButton으로 생성을 하는데 JButton btn = new JButton(); 을 해주면 버튼이 하나 생성이된다.
패널이나 프레임에 add(btn);을 해줌으로써 화면에 나타나게 할 수 있다. 이 밖에도 JCheckBox나 JRadioButton 라디오 버튼이 있는데
라디오 버튼은 동그라미 버튼으로 하나만 선택이 가능한 그런 버튼인데 그냥 쓰면 안되고 ButtonGroup 객체를 생성해 거기다 넣어주고
add(RadioButton)을 해줘서 사용한다.
다음으로는 프레임이나 패널에 글자를 그리거나 입력할 수 있는 textField를 만드는 방법이다.
기본적으로 고정된 글씨를 보여주기 위해서는 JLabel객체를 사용해 new JLabel("안녕하세요"); 이런식으로 텍스트를 지정한다.
또한 텍스트를 입력 받을 수 있는 JTextField와 암호화된 입력을 받고 싶을 땐 JPasswordField가 있다. 좀더 넓은 범위의 텍스틑
입력받고 싶을 땐 JTextArea로 설정이 가능하다. new JTextArea(3,20); 으로 가로,세로 범위 지정을 하면된다.