Soyez le premier à donner votre avis sur cette source.
Vue 12 145 fois - Téléchargée 1 320 fois
import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; class Heure extends JFrame { private int heure,vraiHeure,min,seconde; private int[] x2={200,209,217,225,233,240,248,254,260,265,270, 274,277,278,279,280,279,278,277,274,270, 265,260,254,248,240,233,225,217,209,200, 192,184,176,168,160,153,147,141,136,130, 127,124,122,121,120,121,122,124,127,130, 136,141,147,153,160,168,176,184,192}; private int[] y2={70,71,72,74,77,80,86,91,97,103,110, 118,126,134,142,150,159,167,175,183,190, 197,204,209,214,220,224,227,228,229,230, 229,228,227,224,220,214,209,204,197,190, 183,175,167,159,150,142,134,126,118,110, 103,97,91,86,80,77,74,72,71}; private int[] Tx2={195,240,270,280,270,240,195,155,125,115,120,150}; private int[] Ty2={70,80,110,155,195,225,240,225,195,155,115,80}; private int[] Hx2={200,207,213,220,225,230,236,240,244,247,248,249, 250,249,248,247,244,236,230,225,213,220,213,207,200, 194,188,181,175,170,165,161,157,154,152,151,150,151, 152,154,157,161,165,170,175,181,188,194}; private int[] Hy2={100,101,102,104,107,111,115,120,125,131,138,144,150, 157,163,170,175,181,186,190,194,197,198,199,200, 199,198,197,194,190,186,181,175,170,163,157,150,144, 138,131,125,120,115,111,107,104,102,101}; private final int x1 = 200,y1 = 150; private boolean quar=true,demi=true,moinquar=true; public Heure() { super("Heure"); setBounds(300,200,400,300); Container con = getContentPane(); con.setLayout(null); Date date = new Date(); System.out.println(Hx2.length); System.out.println(Hy2.length); setDefaultCloseOperation(this.EXIT_ON_CLOSE); heure = date.getHours(); vraiHeure = heure; if(heure > 12) heure=(heure-=12)*4; min = date.getMinutes(); seconde = date.getSeconds(); if(min >= 15 && min < 30) { heure++; quar = false; } if(min >= 30 && min < 45) { heure+=2; quar = false; demi = false; } if(min >= 45) { heure+=3; quar = false; demi = false; moinquar = false; } System.out.println(vraiHeure+":"+min+" "+seconde); setVisible(true); setResizable(false); second(); } public void paint(Graphics g) { g.clearRect(0,0,400,300); g.setColor(Color.orange); g.fillRect(100,50,200,200); g.setColor(Color.white); g.fillOval(100,50,200,200); g.setColor(Color.green); g.drawLine(x1,y1,x2[min],y2[min]); g.drawLine(x1,y1,Hx2[heure],Hy2[heure]); g.setColor(Color.red); g.drawLine(x1,y1,x2[seconde],y2[seconde]); g.setColor(Color.blue); g.drawString("12",Tx2[0],Ty2[0]); for(int i=1;i < 12;i++) { g.drawString(String.valueOf(i),Tx2[i],Ty2[i]); } g.setColor(Color.black); if(seconde<10&&min<10) g.drawString(vraiHeure+":0"+min+" 0"+seconde,180,270); if(seconde>=10&&min<10) g.drawString(vraiHeure+":0"+min+" "+seconde,180,270); if(seconde<10&&min>=10) g.drawString(vraiHeure+":"+min+" 0"+seconde,180,270); if(seconde>=10&&min>=10) g.drawString(vraiHeure+":"+min+" "+seconde,180,270); } private void second() { Thread sec = new Thread(); while(true) { try { sec.sleep(1000); }catch(Exception err) { } if(seconde==59) { seconde = 0; if(min==59) { min = 0; if(heure==48) { heure = 0; vraiHeure = 0; } else { heure++; vraiHeure++; } quar=true; demi=true; moinquar=true; } else min++; } else seconde++; if(min >= 15 && min < 30 && quar) { heure++; quar = false; } if(min >= 30 && min < 45 && demi) { heure++; demi = false; } if(min >= 45 && moinquar) { heure++; moinquar = false; } repaint(); } } public static void main(String[] args) { new Heure(); } }
6 oct. 2010 à 11:15
1 déc. 2009 à 12:52
On écris "Moins" et "Quart", de plus les commentaires sont plus qu'utiles pour rendre le code lisible.
Sinon le code marche, même si sa longueur est un peu excessive.
23 juil. 2007 à 11:52
8 sept. 2006 à 11:08
bonne continuation
23 août 2006 à 23:43
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.