Egloos 728x90

구글 애널리틱스


2008/12/31 15:05

[ Java ][ AWT ] Frame , Label ▷ Java 복습



  개인적으로 Java를 배우면서 뭔가 이제야 뭔가 좀 배운 듯하다고 느꼈던 게 AWT를 배우면서였습니다. 아무래도 일단 윈도우창을 일단 띄울 수 있게 되니 그럴 듯해보인다고 할까, 뭔가 대단한 거라도 만든 듯해서 상당히 재미있었죠.

  단지 눈에만 그럴 듯해 보이고, 실제로 (어설프게나마) 작동하게 하려면 엄청난 노가다가 동반된다는 걸 알게 되기도 했지만...;;

  처음 Frame을 이용해 창을 띄우고 나서 황당했던 건 오른쪽 상단의 [x]버튼을 눌러도 종료가 안 된다는 사실;;; 종료시키는 것조차도 일일이 만들어줘야 하는 무시무시한 녀석.

  하여튼 지금은 종료 이벤트 메서드가 없으니 강제종료시켜줘야 합니다. 이클립스라면 콘솔창의 붉은 네모버튼()을 클릭하면 간단.


하여튼 그건 그거고, Frame과 Label 객체의 복습~!


  기본적으로 창을 띄우기 위해서는 Frame이 꼭 필요하죠.

  하지만, Frame 객체를 생성해도 초기에는 창의 크기는 0x0이고, 화면에 보이지 않는 상태로 되어 있기에, 창의 크기를 정해주고 모습을 보이도록 설정해줘야 합니다.
 
  그 외에는 창의 이것저것을 설정하고 값을 얻을 수 있지만 그다지 쓰지는 않을 것 같음...


/* Label 간단 예제
JavaStudy(http://www.javastudy.co.kr)
→자바 프로그래밍 강좌→Java Programming / 박용우
→제8장 AWT(http://www.javastudy.co.kr/docs/yopark/chap08/chap08.html)
→→ 1. AWT(Abstract Window Toolkit) 컴포넌트(Component)
→→→ 다. 레이블(Label) 컴포넌트
*/

package awtTest;

import java.awt.*;


class FrameLabelTest extends Frame {

public FrameLabelTest() {

setLayout(new FlowLayout());

Label label1 = new Label(); //Label 객체 생성
// Label(String text) : Label에 나타날 문자열을 설정하고 생성하는 방식
// Label(String text, int alignment): 문자열과 정렬 방식을 설정하고 생성하는 방식
label1.setText("Left"); //레이블의 텍스트를 주어진 텍스트로 설정합니다.
//String getText(): 레이블의 텍스트를 얻습니다.
label1.setSize(50, 25); //Label 객체의 크기 설정
label1.setBackground(Color.cyan); //Label 객체의 배경색을 설정

Label label2 = new Label("Center");
label2.setAlignment(Label.CENTER);//Label 객체에 나타날 문자열의 정렬방식을 설정. 기본값은 왼쪽 정렬
//왼쪽 정렬: Label.LEFT
//가운데 정렬: Label.CENTER
//오른쪽 정렬: Label.RIGHT
//int getAlignment(): 현재 정렬 방식을 얻습니다.
label2.setSize(50, 25);
label2.setBackground(Color.yellow);

Label label3 = new Label("Right", Label.RIGHT);
label3.setSize(50, 25);
label3.setBackground(Color.green);

add(label1); //객체를 추가합니다.
add(label2);
add(label3);

}


public static void main(String args[]) {

FrameLabelTest f = new FrameLabelTest();

f.setTitle("Frame & Label"); //창(Frame)의 제목줄에 나타낼 문자열 설정
//new Frame("문자열") 방식으로 객체를 생성하면서 정해주는 것도 가능.

f.setSize(200, 60); //창의 크기를 지정
//pack() 을 사용하면 창에 담긴 컴포넌트에 맞춰 적절한 크기가 형성된다.

f.setVisible(true); //초기에는 창이 보이지 않는 상태로 되어 있기에 꼭 보이도록 지정해줘야 한다.

}

}


실행 결과

  Label은 사실상 문자열을 보여주기 위한 객체라 할 수 있겠죠.

  이 소스 역시 JAVA STUDY 박용우님의 강좌에 나와있던 것을, 개인적으로 보기 편하게 약간 수정하고 주석을 달아봤습니다.

덧글

댓글 입력 영역

애드센스336x280

알라딘TTB-Egloos(하단-일반)



이 이글루를 링크한 사람 (블랙)

36