2024.01.25

김무영·2024년 1월 25일

GridLayout ( 격자 레이아웃 )

  • 행과 열로 구성된 레이아웃.
  • 배치되는 모든 컴포넌트의 크기가 일정하다.
  • 윈도우의 크기가 변경되면, 커포넌트의 크기가 변경 된다.
  • 각 영역에는 하나의 컴포넌트만 배치된다.
  • 배치는 L -> R 으로 순차적으로 배치된다.
  • GridLayout에 설정한 개수와 배치되는 컴포넌트의 개수가 맞지 않으면 JVM이 알아서 배치 행과 열을 변경한다.

-문법 )
1. 배치관리자 생성 )

GridLayout gl = new GridLayout(,);
  1. 배치관리자를 설정
    setLayout( gl );
  2. 배치
    add( 컴포넌트 );

CardLayout

  • Container Component에만 적용할 수 있는 Layout.
  • 한정적인 공간을 효율적으로 사용하기 위해.
  • 여러 개의 패널을 준비해두고, 이벤트가 발생한 패널 하나만 보여주는 레이아웃.

GridBagLayout

  • 행과 열로 구성된 레이아웃.
  • 행마다 높이가 다르고, 행마다 배치하는 컴푸넌트의 수가 다를 때 사용하는 Layout

복합 레이아웃

  • 여러 개의 레이아웃을 결합하여 사용할 때. (수정 필요)

수동배치

  • 배치관리자를 사용하지 않고, 개발자가 컴포넌트의 크기와 배치위치를 직접 설정하는 배치방법.
    • 배치관리자
      • BorderLayout
      • FlowLayout
      • GridLayout
      • GridBagLayout
      • CardLayout
  • 세밀한 디자인이 가능하다.
  • 문법 )
    1. 배치관리자 해제)
      setLayout(null);
    2. 컴포넌트 생성
      Jbutton jbtn = new Jbutton("텍스트");
    3. 컴포넌트의 크기 설정
      jbtn.setSize( 넓이 , 높이 );
    4. 컴포넌트의 배치 위치 설정
      jbtn.setLocation( x좌표 , y좌표 );
    • 컴포넌트의 크기와 배치를 한번에 설정
      jbtn.setbounds(x좌표 , y좌표 , 넓이 , 높이);

이미지 다루기

  • Icon interface를 매개변수로 사용하는 모든 컴포넌트는 이미지를 넣어서 보여줄 수 있다.
  • 사용법 )
    1. ImageIcon생성
      ImageIcon ii = new ImageIcon("이미지의 절대 경로");
    2. 컴포넌트에 설정
      • 생성자 사용.
        컴포넌트 객체명 = new 컴포넌트( ii );
      • method사용.
        객체명.setIcon( ii );

JScrollPane

  • Container Component ( JPanel, JScrollPane)
  • 스크롤 바가 필요한 컴포넌트에 스크롤 바를 붙여줄 때 사용.
  • 사용법 )
    1. 스크롤바가 필요한 컴포넌트 생성.
      JTextArea jta = new JTextArea();
    2. ScrollBar가 필요한 객체와 has a 관계로 JScrollPane을 생성.
      JScrollPane jsp = new JScrollPane(스크롤 바가 필요한 객체);
      JScrollPane jsp = new JScrollPane(ita); // has a 
    3. 배치.
      JScrollPane을 배치
      add(jsp);

Font - 글꼴 변경

  • 컴포넌트의 글꼴, 스타일, 크기를 변경할 때 사용하는 컴포넌트.
  • Non - Visual Component
  • java.awt패키지에서 제공.
  • 사용법)
    1. Font class 생성
      Font font = new Font( 글꼴, 스타일, 크기);
      //글꼴 : 모든 글꼴 사용가능
      //스타일 : Font 클래스에서 제공하는 Constant 사용.
      //      * Font.PLAIN : 일반글꼴
      //      * Font.BOLD : 진하게
      //      * Font.ITALIC : 이탤릭 체
      //      * Font.BOLD | Font.ITALIC : 진하게 이탤릭 or 사용
    2. 컴포넌트 생성
      컴포넌트 객체명 = new 컴포넌트();
    3. Font 설정
      객체명.setFont( 글꼴객체 );

색 변경

  • java.awt.Color클래스 사용

  • Foreground color ( 글자색 , 전경색 ), Background color ( 바닥색 )

  • 사용법)

    1. Constant 사용 -> 다양한 색을 설정할 수 없다.

      객체명.setForeground( Color.상수명);
      jbtn.setForeground( Color.BLUE );
    2. 생성자 사용

      • Color 클래스를 객체화

        Color color = new Color( int );
        //RGB : 0x000000 ~ 0xFFFFFF
        // 0x빨강2개 초록2개 파랑2개
      • 컴포넌트에 설정

        컴포넌트명.setForeground( c );
      • 바닥색

        컴포넌트명.setBackground( Color클래스 객체 );
        컴포넌트명.setBackground( Constant );
      • 바닥이 투명한 컴포넌트는 투명도를 설정

        컴포넌트명.setOpaque(true);
        컴포넌트명.setBackground( Color클래스 객체 );
        jlblName.setOpaque(true);
        jlblName.setBackground(new Color(0x3F7F5F));
        

0개의 댓글