import java.awt.Color; import java.util.Random; import javax.swing.JOptionPane; import javax.swing.JProgressBar; public class GoThread extends Thread{ private static int grade; HorseGame d; JProgressBar bar; public GoThread(HorseGame d, JProgressBar bar){ // has a~ this.d = d; this.bar = bar; } public void run(){ d.btn.setEnabled(false); // ¹öÆ° ºñÈ°¼ºÈ­ Random random = new Random(); grade =0; // ÃʱâÈ­ d.area.setText(""); // ÃʱâÈ­ d.area.setEnabled(false); // ÅؽºÆ®Area ºñÈ°¼ºÈ­!! for(int i=1; i<=150;i++){ try{ // ¾î¼³Ç »ö±ò ÁöÁ¤..:D if(i < 80){ // °ÔÀÌÁö°¡ 50ÀÌÇÏ bar.setForeground(Color.GREEN); }else if(i >80 && i <100){ // 51~89±îÁö bar.setForeground(Color.CYAN); }else{ // ³ª¸ÓÁö ºí·ç~ bar.setForeground(Color.BLUE); } Thread.sleep(random.nextInt(100)); // ·£´ý 0~99±îÁö bar.setValue(i); // Progress Bar ä¿ì±â bar.setString("´Þ¸®´Â Áß!!"); // ä¿ì´Â µ¿¾ÈÀº "´Þ¸®´Â Áß" ¹®±¸~ if(bar.getValue()==150){ // 100±îÁö~ ++grade; d.area.append("¡Ú"+grade+"µî ¢º"+Thread.currentThread().getName()+"\n"); // ÅؽºÆ® ¿¡¾î¸®¾î¿¡ Âï±â if(grade == 1){ // 1µîÀÏ °æ¿ì bar.setForeground(Color.RED); // ¹Ù »ö±ò »¡°­ bar.setString("¡Ú¡Ú¡Ú¡Ú¡Ú¿ì½Â¡Ú¡Ú¡Ú¡Ú¡Ú¡Ú"); // ¹Ù¾È¿¡ ¿ì½Â ½ºÆ®¸µ Âï±â d.btn.setEnabled(true); // ¹öÆ° È°¼ºÈ­ JOptionPane.showMessageDialog(null, "¡Ú¿ì½Â¡Ú"+Thread.currentThread().getName()+"¡Ú¿ì½Â¡Ú"); // ¸Þ¼¼Áö ¶ç¿ì±â 1µî¸¸ }else{ bar.setForeground(Color.white); // ³ª¸ÓÁö ÇϾé°Ô~ bar.setString("¤Ð_¤ÐÁ§ÀÏ! "); // Á§ÀÏ~ } //System.out.println(Thread.currentThread().getName()+grade+"µµÂø"); } }catch(Exception e){} } // end of for } // end of run } // end of main