Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

UN WAITER PERMETTANT D'AFFICHER CE QUE LE PROG FAIT .


Information sur la source

Catégorie :Application Classé sous : waiter, attente Niveau : Débutant Date de création : 21/03/2003 Date de mise à jour : 21/03/2003 10:39:31 Vu : 3 418

Note :
Aucune note

Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

Description

Ce prog ouvre une fenetre en plein milieu de l'ecran, affiche le texte que vous voulez. Une barre progresse juste au dessous du texte faisant comprendre que à l'utilisateur qu'il n'attends pas pour rien. Le demarage se fait à la creation du waiter(Waiter waiter = new Waiter(); ), la mise à jour du texte se fait par la methode waiter.setTexte(string) et la fermeture par waiter.close();
 

Source

  • /*************************************************
  • créé par AlphaSurfeur
  • **************** 19 mars 2003 *********************/
  • import java.awt.*;
  • import java.awt.geom.*;
  • import java.awt.event.*;
  • import javax.swing.*;
  • public class Waiter extends JWindow implements ActionListener{
  • // creer composants
  • private int x , tWinX, tWinY, tailleFenetreX, tailleFenetreY;
  • private int xa, ya, delaiAnimation;
  • private FontMetrics fm;
  • private String texte;
  • protected Timer timer;
  • /** Creates new Waiter */
  • public Waiter() {
  • // recup taille ecran
  • tailleFenetreX = (int)Toolkit.getDefaultToolkit().getScreenSize().width;
  • tailleFenetreY = (int)Toolkit.getDefaultToolkit().getScreenSize().height;
  • start();
  • tWinX = 300; tWinY = 120;
  • xa = (tailleFenetreX/2)-tWinX/2;
  • ya = (tailleFenetreY/2)-tWinY/2;
  • setBounds(xa, ya, 300, 120);
  • setBackground(Color.darkGray);
  • setVisible(true);
  • } // fin de constructeur
  • // methodes
  • public void paint(Graphics g){
  • fm = g.getFontMetrics();
  • if(texte == null || texte.equals(""))
  • { texte = new String("Veuillez patienter...");}
  • int longueurTexte = fm.stringWidth(texte);
  • // si texte trop long
  • if(longueurTexte >= 280){
  • tWinX = longueurTexte + 20;
  • setBounds(xa, ya, tWinX, tWinY);}
  • int hauteurTexte = fm.getHeight();
  • int contourX = tWinX-10;
  • int contourY = tWinY-10;
  • int xb = (contourX/2)-(longueurTexte/2);
  • // dessiner le contour
  • g.setColor(Color.darkGray);
  • g.fill3DRect(5, 5, contourX, contourY, true);
  • // texte
  • g.setColor(Color.lightGray);
  • g.fill3DRect(xb-2, 22, longueurTexte+4, 2+hauteurTexte, false);
  • g.setColor(Color.red);
  • g.drawString(texte, xb, 20+hauteurTexte);
  • // barre
  • g.setColor(Color.lightGray);
  • g.fill3DRect( 12, 60, contourX-14, 30, false);
  • // defilement
  • g.setColor(Color.yellow);
  • if(x == (contourX-18))
  • {g.setColor(Color.blue);
  • g.fill3DRect( 12, 60, contourX-14, 30, true);
  • x = 0;}
  • g.setColor(Color.yellow);
  • g.fill3DRect( 14, 62, x, 26, true);
  • x++;
  • } // fin de paint
  • // listener
  • public void actionPerformed(ActionEvent e){
  • repaint();}
  • // setTexte
  • public void setTexte(String string){
  • texte = new String(string);
  • repaint();}
  • // start
  • public void start(){
  • if(timer == null){
  • timer = new Timer(50, this);
  • timer.start();}
  • else if(! timer.isRunning())
  • timer.restart();}
  • // close
  • public void close(){
  • timer.stop();
  • setVisible(false);}
  • // main
  • public static void main(String arg[]){
  • Waiter i = new Waiter();}
  • } // fin de classe
/*************************************************
                        créé par AlphaSurfeur
**************** 19 mars 2003 *********************/

import java.awt.*;
import java.awt.geom.*;
import java.awt.event.*;
import javax.swing.*;

public class Waiter extends JWindow implements ActionListener{
    // creer composants
    private int x , tWinX, tWinY, tailleFenetreX, tailleFenetreY;
    private int xa, ya, delaiAnimation;
    private FontMetrics fm;
    private String texte;
    protected Timer timer;

    /** Creates new Waiter */
    public Waiter() {
        // recup taille ecran
        tailleFenetreX = (int)Toolkit.getDefaultToolkit().getScreenSize().width;
        tailleFenetreY = (int)Toolkit.getDefaultToolkit().getScreenSize().height;
        start();
        tWinX = 300; tWinY = 120;
        xa = (tailleFenetreX/2)-tWinX/2;
        ya = (tailleFenetreY/2)-tWinY/2;
        setBounds(xa, ya, 300, 120);
        setBackground(Color.darkGray);
        setVisible(true);
    } // fin de constructeur
    // methodes
    public void paint(Graphics g){
        fm = g.getFontMetrics();
        if(texte == null || texte.equals(""))
        { texte = new String("Veuillez patienter...");}
        int longueurTexte = fm.stringWidth(texte);
        // si texte trop long
        if(longueurTexte >= 280){
            tWinX = longueurTexte + 20;
            setBounds(xa, ya, tWinX, tWinY);}
        int hauteurTexte = fm.getHeight();
        int contourX = tWinX-10;
        int contourY = tWinY-10;
        int xb = (contourX/2)-(longueurTexte/2);
        // dessiner le contour
        g.setColor(Color.darkGray);
        g.fill3DRect(5, 5, contourX, contourY, true);
        // texte
        g.setColor(Color.lightGray);
        g.fill3DRect(xb-2, 22, longueurTexte+4, 2+hauteurTexte, false);
        g.setColor(Color.red);
        g.drawString(texte, xb, 20+hauteurTexte);
        // barre
        g.setColor(Color.lightGray);
        g.fill3DRect( 12, 60, contourX-14, 30, false);
        // defilement
        g.setColor(Color.yellow);
        if(x == (contourX-18))
        {g.setColor(Color.blue);
        g.fill3DRect( 12, 60, contourX-14, 30, true);
        x = 0;}
        g.setColor(Color.yellow);
        g.fill3DRect( 14, 62, x, 26, true);
        x++;
    } // fin de paint
    // listener
    public void actionPerformed(ActionEvent e){
        repaint();}
        // setTexte
        public void setTexte(String string){
            texte = new String(string);
            repaint();}
        // start
        public void start(){
            if(timer == null){
                timer = new Timer(50, this);
                timer.start();}
            else if(! timer.isRunning())
                timer.restart();}
                // close
                public void close(){
                    timer.stop();
                    setVisible(false);}
        // main
        public static void main(String arg[]){
            Waiter i = new Waiter();}

} // fin de classe
 

Conclusion

Les couleurs sont pas terribles, j'y travaille....
 

Commentaires et avis

Aucun commentaire pour le moment.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

mettre un processus en attente longue [ par pms77 ] slt,comment on peut faire basculer en mode attente longue durée par exemple 2h pour continuer l'execusion d'un programme. Attente active [ par Kaktus ] Tout d'abord bonjour à tous !Je connais actuellement énormément de difficultés pour créer une attente active dans mon jeu.Je souhaiterais une attente probleme d'attente [ par debiloffprofondikum ] Bonjour,je lance un executable dans mon programme java qui va créer un fichier.Puis plus loin dans le code, je cherche à récupérer ce fichier.Mais le Se mettre en attente de donnees sur un fichier [ par puxware ] Salut,Voila mon probleme :Au lieu de lire à intervalles régulier mon fichier, je voudrais me mettre en attente et déclencher la lecture lorsque des do attente Jframe [ par pasqal ] Je voudrais attendre la fermeture d'une Jframe avant de poursuivre la suite du programme.Pouvez-vous m'aider ?merciPASQAL Fenêtre d'attente + thread = problème :( [ par brupistone ] Bonjour à tous, je me tourne vers vous pour comprendre un problème sur lequel je bloque depuis quelques jours.Je souhaiterais afficher une fenêtre d'a Attente condition sans boucle [ par omcougar ] Bonjour,J'ai plusieurs threads qui sont suceptibles d'attendre qu'une condition soit vraie...bon evidemment on peut faire une boucle genrewhile(!ma_co Attente d'un clic [ par bond_never_die ] Bonjour à tous, Voilà, j'ai un petit souci avec une application que je suis en train de développer : La fonction qui me prose problème doit normalemen


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,328 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.