ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Java GUI
    Java/Java 기초 2012. 7. 30. 22:03

    정말 오랜만에 포스팅합니다 ㅠㅠ 공부하느라 늦었다는 변명 늘어놔봅니다..

    이번엔 자바 GUI (Graphical User Interface)에 대해 알아보려 합니다.

    포스트 제목을 보셨듯이 한 번에 포스팅 하기엔 많은 양이기에 나눠서 포스팅 하려 합니다.

    그만큼 자세하게 포스팅할테니 양해부탁드립니다ㅠㅠ

    먼저, GUI를 구현하기위해 AWT 패키지를 상속받아야합니다. AWT가 뭐냐하면 자바에서 제공하는 추상적인 윈도우 툴킷입니다.

    그런데 AWT에는 단점이 있습니다. 운영체제마다 실행할 때 실행되는 프로그램의 모양은 각각 다릅니다. 윈도우즈와 리눅스로 각각 실행했을 때 실행되는 모양이 다르다는 겁니다.

    이 단점을 보안하기 위해서 Swing이 개발되었습니다. Swing은 AWT와 달리 JVM(Java Virtual Machine)에서 그래픽을 자체적으로 처리합니다. 아주 좋죠~ 일단 AWT부터 설명하도록 하겠습니다.

     

    GUI는 이런 구조로 되어있습니다. JFrame을 상속받고 그 안에 Container 객체를 생성 후 그 Container 객체 안에 여러 Panel을 생성한 후에 여러가지 객체를 생성시키는 겁니다. 가장 기본적인 예제를 보겠습니다.

     

    import javax.swing.*;  //swing패키지를 상속받습니다.
    public class FT {
     public static void main(String args[]){
       JFrame jf = new JFrame("Test Frame"); //JFrame 클래스로부터 객체를 생성합니다.
       jf.setSize(400,300); //가로 세로 길이를 설정합니다.
       jf.setVisible(true);
     }
    }
     

    실행결과 :

     

    보시는 바와 같이 프레임만 생성시켰기 때문에 내용물은 아무 것도 없습니다. 다음 예제를 보겠습니다.

     

     

    import javax.swing.*;  //swing패키지를 상속받습니다.
    import java.awt.*;
    public class FT {
     public static void main(String args[]){
       JFrame jf = new JFrame("Test Frame"); //JFrame 클래스로부터 객체를 생성합니다.
       Container ct = jf.getContentPane(); //<<를 생성하기 위해 awt패키지를 상속받습니다.
       JButton jb = new JButton("테스트");
       ct.add(jb); //컨테이너에 버튼을 올립니다.
       jf.setSize(400,300); //가로 세로 길이를 설정합니다.
       jf.setVisible(true);
     }
    }
     

    실행결과 :

     

    버튼이 완전 크게 나왔죠? 배치관리자를 사용하지 않았기 때문입니다. 다음엔 배치관리자를 이용하여 버튼을 생성하는 방법에 대해 포스팅 하겠습니다. 무더위 여름날 즐거운 하루 되시기 바랍니다^^

    'Java > Java 기초' 카테고리의 다른 글

    Java BorderLayout  (0) 2012.08.23
    Java FlowLayout  (0) 2012.08.21
    자바 스레드  (0) 2012.07.13
    자바 추상 클래스  (0) 2012.06.30
    자바의 꽃 상속과 오버라이딩  (2) 2012.06.24

    댓글

Designed by Tistory.