본문 바로가기
  • think normal
새로워지기/서른의 생활코딩

ex8) java.awt.*

by 청춘만화 2012. 3. 4.
/*
import java.awt.*;
import java.awt.event.*;

public class CardLayoutTest {
     private Frame frame;
     private Button b1,b2,b3;
     private CardLayout card;

     public static void main(String[] args) {
          frame = new Frame("CardLayout");
          card = new CardLayout();
          frame.setLayout(card);
     }
}
**/




import java.awt.*;
import java.awt.event.*;

public class CardLayoutTest {
     private Frame frame;
     private Button b1, b2, b3;
     private CardLayout card;

     public CardLayoutTest() { //생성자: 화면구성!!!
          // 프레임 객체 생성
          frame = new Frame( "CardLayout" );
          // CardLayout 객체 생성
          card = new CardLayout();
          // frame의 LayoutManager를 바꿈
          frame.setLayout( card );

          // 버튼 객체 생성
          b1 = new Button( "Button1" );
          b2 = new Button( "Button2" );
          b3 = new Button( "Button3" );

          // 윈도우 종료 이벤트
          frame.addWindowListener( new WindowAdapter() {
               public void windowClosing( WindowEvent e ) {
               System.exit( 0 );
               }
          });

          //버튼 하나씩을 각각의 Panel에 붙인다.
          Panel panel1 = new Panel(); //FlowLayout
          panel1.add( b1 );
          Panel panel2 = new Panel();
          panel2.setLayout( new BorderLayout() );  //BorderLayout
          panel2.add( b2, "Center" );
          Panel panel3 = new Panel(); //FlowLayout
          panel3.add( b3 );

          //프레임에 붙이는 3개의 Panel에 이름을 붙여줌
          frame.add( panel1, "First" );    // "First" 별명을 사용해 추후 컨트롤함!
          frame.add( panel2, "Second" );
          frame.add( panel3, "Third" );

          //화면에 출력될 Panel을 선정
          card.show( frame, "First" );
          frame.setSize( 300, 200 );
          frame.setVisible( true );
     }



     //두번째, 세번째 카드를 출력 시켜 주는 메소드
     public void showCard() {
          boolean flag = true;
          int count = 0;

          //일정 시간이 흘르면 다른 카드를 보여 주기 위한
          //무한 루프
          while( flag ) {
               if( count == 300000000 ) {
                    //두번째 카드를 프레임에 출력
                    card.show( frame, "Second" );
               } else if( count == 999999999 ) {
                    //세번째 카드를 프레임에 출력
                    card.show( frame, "Third" );
                    flag = false;
               }
          count++;
          }
     }
     public static void main( String[] args ) {
          CardLayoutTest ct = new CardLayoutTest();
          ct.showCard();
     }
}

'새로워지기 > 서른의 생활코딩' 카테고리의 다른 글

ex1) java.io.*  (0) 2012.03.06
java _2012.03.05  (0) 2012.03.06
ex7) java.awt.*  (0) 2012.03.04
ex6) java.awt.*  (0) 2012.03.04
ex5) java.awt.*  (0) 2012.03.04

댓글