컴포넌트(component) 
   레이블, 버튼이나 텍스트 필드와 같은 GUI를 작성하는 기본적인 빌딩 블록을 의미 하는 것으로 시스템에서는 컨트롤 (control)이라고 부른다.
AWT(Abstract Windows Toolkit)
  운영 체제가 제공하는 자원을 이용하여 컴포넌트를 생성한다.
Swing(AWT보다 발전한 클래스)
  컴포넌트가 자바로 작성되어 있기 때문에 어떤 플랫폼에서도 일관된 화면을 보여줄 수 있다.
  특징 : JFC(Java Foundation Class)의 일부로 에플리케이션에 그래픽 사용자 인터페이스, 풍부한 그래픽 기능, 다양한 언어와 다양한 입력장치들을 지원한다.

컨테이너
 자바가 제공하는 컴포넌트는 크게 기본 컴포넌트와 컨테이너 컴포넌트로 나누어진다. 컨테이너란 다른 컴포넌트들을 내부에 넣을 수 있는 컴포넌트를 의미한다.
1.최상위 컨테이너
 절대 다른 컨테이너 안에 포함될 수 없는 컨테이너, 프레임(JFrame),다이알로그(JDialog),애플릿(JApplet)
2.일반 컨테이너
 다른 컨테이너 안에 포함 될 수 있는 컨테이너, 패널(JPanel),스크롤 페인(JScrollPane)
GUI 작성 절차
 
최상위 컨테이너 생성->컴포넌트 추가

프레임 생성하기 #1
import javax.swing.*;
public class FrameTest
{
  public static void main(String args[])
  {
        JFrame f=new JFrame("2006242011김동영");
        f.setSize(300,200);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setVisible(true); //화면에 띄우기
  }
}
프레임 생성하기 #2
import javax.swing.*;
public class FrameTest2 extends JFrame
{
    public FrameTest2()
    {
        setSize(300,200);
        setTitle("2006242011김동영");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true); //화면에 띄우기
    }
    public static void main(String args[])
    {
        FrameTest2 f=new FrameTest2();
    }
}

 프레임 생성하기 #3
import javax.swing.*;
public class MyFrame extends JFrame
{
   
    public MyFrame()
    {
        setSize(300,200);
        setTitle("2006242011김동영");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true); //화면에 띄우기
    }
}


public class FrameTest3
{
   public static void main(String args[])
   {
       MyFrame f=new MyFrame();
    }
}

컴포넌트 생성 및 추가#1
import javax.swing.*;
import java.awt.*; //FlowLayout class 사용하기위해
public class FrameTest2 extends JFrame
{
    public FrameTest2()
    {
        JButton b=new JButton("버튼"); //버튼을 생성
       
JPanel p=new JPanel();
        p.add(b); //패널에 버튼추가
        this.add(p); //패널을 프레임에 추가
        setSize(300,200); //프레임 크기설정
        setTitle("2006242011김동영");
        setLayout(new FlowLayout()); //프레임의 배치 관리자 설정
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true); //화면에 띄우기
    }
    public static void main(String args[])
    {
        FrameTest2 f=new FrameTest2();
    }
}
 
컴포넌트 생성 및 추가#2
import javax.swing.*;
import java.awt.*; //FlowLayout class 사용하기위해
public class FrameTest2 extends JFrame
{
    public FrameTest2()
    {
        JLabel l=new JLabel("안녕하세요");
        JButton b=new JButton("버튼");
        JLabel m=new JLabel();
        m.setText("김동영");
        JTextField t=new JTextField("123456789");      
        JPanel p=new JPanel();
        p.add(l);
        p.add(b);
        p.add(m);
        p.add(t);
        this.add(p);
        setSize(300,200);
        setTitle("2006242011김동영");
        setLayout(new FlowLayout()); //FlowLayout:위치를 잡아주는 객체
       
        m.setText(t.getText());
       
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true); //화면에 띄우기
    }
    public static void main(String args[])
    {
        FrameTest2 f=new FrameTest2();
    }
}
 
 

+ Recent posts