컴퓨터프로그래밍/JAVA

Java-Swing의 이해

zelkova 2016. 6. 10. 10:52
<목차로 돌아가기>


  Swing의 이해


Swing 이해하기

1. 서로다른 플랫폼에서도 동일한 결과 유지

2. 훨씬 더 가벼움

3. 뛰어난 이식성

4. Awt를 거의 상속받고 기능이 더 확장되어 있음




Swing의 특징

1. 더블 버퍼링 지원

2. 각 컴포넌트의 속성값을 설정이 가능하다

3. 컴포넌트에 투명한 효과를 줄 수 있다.

4. 툴팁(Tool Tip), 테두리(border) 등을 지원한다.



1.ContentPane : Jcomponent 즉, 자식 컴포넌트를 담는 부분으로 모든 자식 스윙컴포넌트 윈도우들의 부모 윈도우가 됨 

(1.5버전 이하에서는 rootPane에 직접 자식 컴포넌트를 추가 해주어서는 않되고, 반드시 contentPane에 의해서 추가 시켜줘야함.)


2.LayerdPane : 윙 컴포넌트들이 겹쳐 질 때 각 컴포넌트의 상하위치를 결정 항상 존재한다 예를 들자면 contentPane과 MenuBar는 이 컴포넌트의 자식 윈도우로 구성됨




  연습해보기


기본적인 화면은 AWT와 거의 비슷하게 사용할 수 있습니다. 단지 Frame 앞에 J가 붙는것과 import에서 java.이 아니라 javax. 으로 시작하는 차이입니다.


class 클래스명 extends Jframe {   }


JFrame 객체명 = new JFrame();


1

2

3

4

5

6

7

8

9

10

11

12

13

14

 import javax.swing.*;


 class Exam 

 {


public static void main(String[] args) 

{

JFrame jf=new JFrame();

jf.setTitle("스윙연습창");

   jf.setSize(200,200);

   jf.setVisible(true);

}

 }




1.5 버전과 같은 Swing같은 경우는 Awt에서처럼 해당 컨테이너에 곧바로 추가하지 못하고 Container공간에 추가해야 합니다.


getContentPane()메소드를 통하여 컨테이너 객체를 생성하고 추가할 수 있습니다.



1

2

3

4

5

6

7

8

9

10

11

12

13

14

 import javax.swing.*;


 class Exam 

 {

public static void main(String[] args) 

{

   JFrame jf=new JFrame();

   JLabel lbl=new JLabel("연습중입니다.",JLabel.LEFT);

   jf.getContentPane().add(lbl);

   jf.setTitle("스윙연습창");

  jf.setSize(300,200);

  jf.setVisible(true);

}

 }
















반응형

'컴퓨터프로그래밍 > JAVA' 카테고리의 다른 글

Java-Swing-JButton  (0) 2016.06.10
Swing의 기능과 컴포넌트  (0) 2016.06.10
Java-이미지 삽입하기  (0) 2016.06.09
Java_이벤트_adapter  (0) 2016.06.01
JAVA-AWT이벤트처리  (0) 2016.05.24