시험공부
 

 

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

 

class ProgressExam extends Frame {

             private JProgressBar     jBar;

             private JButton up;

             private JButton down;

             private boolean bool;

             private int value;

             public ProgressExam(){

                           jBar=new JProgressBar(0, 100);

                           up=new JButton("");

                           down=new JButton("다운");

                           setLayout(new FlowLayout());

                           add(jBar);

                           add(up);

                           add(down);

                           setSize(200, 200);

                           setVisible(true);

                           up.addActionListener(new ActionListener(){

                                        public void actionPerformed(ActionEvent ae){

                                                     bool=true;

                                        }

                           });

                           down.addActionListener(new ActionListener(){

                                        public void actionPerformed(ActionEvent ae){

                                                     bool=false;

                                        }

                           });

                           while(true){

                                        if(bool==true){

                                                     if(value>=100){

                                                                                value=100;

                                                     }

                                                     else{

                                                                  jBar.setValue(value);

                                                                  try{

                                                                                Thread.sleep(100);

                                                                  }catch(InterruptedException ie){}

                                                                  value++;

                                                     }

                                        }

                                        else{

                                                     if(value<=0){

                                                                  value=0;

                                                     }

                                                     else{

                                                                  jBar.setValue(value);

                                                                  try{

                                                                                Thread.sleep(100);

                                                                  }catch(InterruptedException ie){}

                                                                  value--;

                                                      }

                                        }

                           }

             }

             public static void main(String[] args){

                           ProgressExam pe=new ProgressExam();

             }

}

 

import java.awt.*;

import javax.swing.*;

import java.util.*;

 

public class ComponentExam extends JFrame {

             public ComponentExam(){

                           JPanel pane=new JPanel();

                           pane.setLayout(new GridLayout(3,2));

                           pane.add(new JTextField(10));

                           pane.add(new JPasswordField(10));

                           pane.add(new JRadioButton("Radio"));

                           pane.add(new JButton("Button"));

                           Vector list=new Vector();

                           list.add("one");

                           list.add("two");

                           list.add("three");

                           list.add("four");

                           pane.add(new JList(list));

                           pane.add(new JCheckBox("CheckBox"));

                           add(pane, "Center");

                           add(new JButton("Button2"), "South"           );

                           setSize(200, 300);

             }

             public static void main(String[] args){

                           ComponentExam ce=new ComponentExam();

                           ce.setVisible(true);

             }

}

 


이어지는 내용
by LetsJava | 2008/12/08 13:43 | 시스템프로젝트 | 트랙백 | 덧글(1)
왜 안될까요? 교수님...
 

import java.awt.*;

import java.awt.event.*;

 

class Closing extends Frame {

             private Canvas canv=null;

            

             public Closing(){

                           setTitle("10초후 자동종료");

                           setSize(200, 200);

                           canv=new Canvas();

                           add(canv, "Center");

                           addWindowListener(new WindowListener(){

                                        public void windowClosing(WindowEvent arg0) {

                                                     Graphics g=canv.getGraphics();

                                                     for(int i=10; i>0; i--){

                                                                  try{

                                                                                g.clearRect(0, 0, canv.getWidth(), canv.getHeight());

                                                                                g.drawString("종료까지 남은 시간 : "+i+"", canv.getWidth()/2-70, canv.getHeight()/2-10);

 

                                                                                Thread.sleep(1000);

                                                                  }catch(Exception ie){

                                                                                ie.getStackTrace();

                                                                  }

                                                     }

                                                     System.exit(0);   

                                        }

 

                                        public void windowActivated(WindowEvent arg0) {

                                                     // TODO 자동 생성된 메소드 스텁

                                                    

                                        }

 

                                        public void windowClosed(WindowEvent arg0) {

                                                     // TODO 자동 생성된 메소드 스텁

                                                    

                                        }

 

                                        public void windowDeactivated(WindowEvent arg0) {

                                                     // TODO 자동 생성된 메소드 스텁

                                                    

                                        }

 

                                        public void windowDeiconified(WindowEvent arg0) {

                                                     // TODO 자동 생성된 메소드 스텁

                                                    

                                        }

 

                                        public void windowIconified(WindowEvent arg0) {

                                                     // TODO 자동 생성된 메소드 스텁

                                                    

                                        }

 

                                        public void windowOpened(WindowEvent arg0) {

                                                     // TODO 자동 생성된 메소드 스텁

                                                    

                                        }

                           });

                                       

             }

             public static void main(String[] args){

                           Closing c=new Closing();

                           c.setVisible(true);

             }

                                                     

}

 


--------------------------------------------
Closing.java 가 들어있는 폴더에는 이것 외에는 아무것도 없습니다.
인터페이스 윈도우리스너를 대신해 클래스 윈도우아답터를 넣으면
컴파일러가 에러 메세지를 띄웁니다.
메세지 내용은 뭐 클래스 WindowAdapter를 찾을 수 없다는 내용의
어쩌고 저쩌고...
내 컴이 이상한건가? 안됩니다...

by LetsJava | 2008/12/07 21:20 | 시스템프로젝트 | 트랙백 | 덧글(1)
모르겠습니다.
 
class StickTest{
 public static void main(String[] args){
  Frame frm = new Frame("TT");
  Canvas canvas=new Canvas();  
  frm.setSize(200, 200);
  frm.add(canvas, "Center");
  frm.setVisible(true);
  
  Graphics g=canvas.getGraphics();
  g.setColor(Color.blue);
  g.drawString("Hello", 20, 50);
  //g.drawLine(20, 20, 20, 40);
  //g.drawLine(20, 40, 40, 40);
  g.fillRect(20, 20, 40, 40);
 }
}

-------------------------------
캔버스 이용해서 그리기 하는데
g.drawString(); 메소드를 함께 실행시키지 않으면
g.drawLine(), g.drawRect(), g.fillRect() 모두
화면에 보이질 않습니다. g.drawString()을 같이 해야만 나오고 있는 상황인데...

혹시 보실까 싶지만 보신다면 ㅜ.ㅡ...
by LetsJava | 2008/12/04 11:04 | 시스템프로젝트 | 트랙백 | 덧글(1)
프로젝트 Server
 

import java.io.*;

import java.net.*;

import java.util.*;

 

class TempoSocket{

            

             private Socket tempoSocket;

             private PrintWriter pw;

            

             public TempoSocket(Socket tempoSocket){

                          

                           this.tempoSocket=tempoSocket;

                           try{

                                        pw=new PrintWriter(tempoSocket.getOutputStream(), true);

                           }catch(IOException e){}

                          

             }

             public void send(String str){

                           pw.println(str+"\n");

             }

            

}

 

class ServerThread extends Thread{

 

             private Socket clntSocket;

             private BufferedReader br;

             private Vector clntList;

            

             public ServerThread(Socket clntSocket, Vector clntList){

                          

                           this.clntSocket=clntSocket;

                           this.clntList=clntList;

                          

                           try{

                                        br=new BufferedReader(new InputStreamReader(clntSocket.getInputStream()));

                           }catch(IOException e){}

                          

             }

             public void run(){

                          

                           while(true){

                                        String str=null;

                                        try{

                                                     str=br.readLine();

                                        }catch(IOException e){}

                                        for(int i=0; i<clntList.size(); i++){

                                                     TempoSocket tSocket=(TempoSocket)clntList.get(i);

                                                     tSocket.send(str);

                                        }

                           }

             }

            

}

 

class JavaServer{

            

             public static void main(String[] args){

                          

                           System.out.println(" Welcome to Chatting Server");

                          

                           ServerSocket servSocket;

                           Vector clntList;

                          

                           try{

                                        servSocket=new ServerSocket(8088);

                                        clntList=new Vector(10);

                                        while(true){

                                                     Socket tempo=servSocket.accept();

                                                     TempoSocket tSocket=new TempoSocket(tempo);

                                                     clntList.add(tSocket);

                                                    

                                                     ServerThread st=new ServerThread(tempo, clntList);

                                                     st.start();

                                        }

                           }catch(Exception e){}

                          

             }

            

}


3가지 클래스로 구분 되어있습니다.
1. TempoSocket 클래스
2. ServerThread 클래스
3. JavaServer 클래스

TempoSocket 클래스는 클라이언트 요청에 의한 socket 생성시 내용을 담기위해 만들었습니다.
 * 여러명이 동시 접속하여 채팅 할 경우, 서버가 한 호스트로 부터 받은 내용을 다시 여러 호스트로 뿌려주기 
   위해서 각각의 클라이언트 소켓의 전송경로 clntSocket.getOutputStream()를 기억하기 위해서..
ServerThread 클래스는 여러 클라이언트 소켓의 동시 진행을 위해서 만들엇습니다. 실시간 채팅에서
이 기능을 구현하지 않으면 아마도 채팅글 입력 순서에 따라 출력 되는게 아니라 프로세스 진행 순서에
따라서 출력되지 않을까 싶습니다.
 * 10명이 채팅시 10개의 소켓이 활성화 상태이며, 한 클라이언트가 메세지 전송시 해당 소켓을 인수로 사용하는
    BufferedReader 객체가 이를 읽은 후 , 벡터에 저장된 10개의 클라이언트 소켓의 정보를 담은 객체를 이용해서
    모두 뿌려줌
JavaServer 클래스는 main메소드가 있고 무한 루프를 돌면서 새로운 클라이언트 접속시 위의 두 과정을 진행 시킴

  
by LetsJava | 2008/11/28 14:28 | 시스템프로젝트 | 트랙백 | 덧글(2)
프로젝트
 
































에러도 좀 나고 파일을 나누니 연동이 잘 안되는 것 같습니다.
금방 고쳐서 다시 ...
by LetsJava | 2008/11/27 17:19 | 트랙백 | 덧글(1)