블로그 이미지
하루, 글. 그림. 영상매체. 표현을 도와주는 기기들. 도전 중. 동화다아아
    동화다아아

    카테고리

    분류 전체보기 (176)
    잡담 (1)
    IT 기기-리뷰&뉴스 (7)
    리뷰 - 도서 (1)
    리뷰 - 영상 (0)
    리뷰 - 그림/음악 (1)
    내장형 하드웨어 (163)
    Total
    Today
    Yesterday

    윈도우를 생성하는 기본 예제

    package kr.ac.busanit.window;

     

    import java.awt.Container;

    import java.awt.Dimension;

     

    import javax.swing.JFrame;

    import javax.swing.JLabel;

    import javax.swing.SwingConstants;

     

    public class MyWindow {

           public static void main(String[] args) {

                

                 JFrame frame = new JFrame("Title"); // frame Title이라는 문자를 보여준다.

                 JLabel label = new JLabel("반갑습니다.", SwingConstants.CENTER);

                                     // SwingConstants.'위치' 라벨에 들어가는 문자열의 위치를 지정할 있다.

                

                 Container contentPane =frame.getContentPane();

                 contentPane.add(label);

                 //frame.add()

                

                 frame.pack();

                 frame.setLocation(100,100); // 화면(모니터)상의 어느지점에 창이 생기는지 지정

                 frame.setSize(300,300);

                 //frame.setPreferredSize(new Dimension(300,200)); // 프레임의 크기를 바꾼다.

                 frame.setVisible(true); // 윈도우가 화면에 보이도록 한다.

                 frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE); // x(종료)버튼 활성화

           }

    }



     → 출력결과 

     

    윈도우의 기본적인 구성요소

     

    타이틀 바(title bar)

    라벨(label)

    프레임(frame)

    content pane

    컴포넌트(component)

    프레임, 타이틀 바, content pane, 라벨 등의 구성요소를 통틀어 이르는 용어

     

    컴포턴트들이 겹쳐진 층으로 구성되는 윈도우



    프레임

    Hello, Java

    타이틀 바

    content pane

    라벨

    프레임 만드는 방법



    newCmalloc과 유사하다.

     → 초창기 JAVA 윈도우 프로그래밍에서는 awt를 사용했으나 요즘은 swing을 사용한다.

     → swing은 특히 안드로이드에서 많이 사용된다.

     → 왼쪽의 JFrame frame은 변수 선언이며 오른쪽의 new JFrame(); 은 메모리를 할당한다.

     → new는 객체의 생성

     → , 왼쪽항의 JFrametype이 되며 frame은 이름이 되고 이것은 오른쪽 항의 new 명령에 의해 메모리에 생성된
         JFrame();의 주소를 저장하게 된다.

     

     

    타이틀이 표시된 프레임 만드는 방법


     

    ⇒ 라벨 만드는 방법


     

    ⇒ 프레임에 종속된 content pane을 가져오는 방법


     

    content pane 위에 라벨을 올려놓는 방법


     

    ⇒ 프레임을 적절한 크기로 조정하는 방법


     

    ⇒ 프레임을 디스플레이하는 방법


     

    ⇒ 윈도우의 위치를 지정하는 방법


     

    ⇒ 프레임의 크기를 바꾸는 방법


     

    ⇒ 라벨의 위치를 지정하는 방법 

     

     

     

    - 윈도우 프로그램의 작성 방법

    텍스트 상자와 버튼

              

    텍스트 상자

    버튼

    라벨

    텍스트 상자를 만드는 방법


     

    버튼을 만드는 방법


     

    여러 개의 컴포넌트를 content pane 위에 올려놓는 방법 잘못된 예

    이렇게 하면 마지막에

    추가된 라벨만 보이게 됩니다

    contentPane.add(text);

    contentPane.add(button);

    contentPane.add(label);

     

     

    예제

    더보기

      → 출력결과 

     

    content pane의 기본 레이아웃 border layout


     

    여러 개의 컴포넌트를 content pane 위에 올려놓는 방법


    contentPane.add(text, BorderLayout.CENTER);

    contentPane.add(button, BorderLayout.EAST);

    contentPane.add(label, BorderLayout.SOUTH);

    이렇게 배치됩니다

     

     

    Border layout을 사용한 예제

    더보기

      → 출력결과 

     


    간단하게 윈도우 제작하는 방법 -예제-

    더보기





    ∙ 버튼 이벤트의 처리 방법

    텍스트 상자의 텍스트를 가져오는 방법


     

    ⇒ 라벨에 텍스트를 표시하는 방법


     

    ⇒ 버튼을 눌렀을 때 해야할 일을 기술하는 방법


     

    ⇒ 버튼을 눌렀을 때 actionPerformed 메소드가 호출되도록 만드는 방법


    우리는 ActionListner 등을 이용해야 JVM에 접근 가능하다.

    → 위의 예제는 button을 눌렀을 때 이벤트가 발생한다. 그리고 그 내용은 변수 listener에 들어간다.(함수 포인터와 유사.)
       → 이벤트 처리에 관련해서 좀더 자세한 내용은 내일 수업시간에 진행한다.

    '내장형 하드웨어 > JAVA' 카테고리의 다른 글

    JAVA - String 클래스의 메소드, 배열  (0) 2011.12.14
    JAVA - 인터프리터,  (0) 2011.12.05
    JAVA - 배열  (0) 2011.07.26
    JAVA - 생성자  (0) 2011.07.25
    JAVA - 기본 문제풀이(짝수, 구구단), 클래스, 메소드  (0) 2011.07.22
    Posted by 동화다아아
    , |

    최근에 달린 댓글

    최근에 받은 트랙백

    글 보관함