IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

mes image ne s'affiche pas


Sujet :

AWT/Swing Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 66
    Points : 41
    Points
    41
    Par défaut mes image ne s'affiche pas
    Salut,
    J'ai une classe Visualisation qui doit me permettre d'afficher une image si elle existe dans le dossier choisi. Le programme cherche si l'image nommée Canard0.jpg existe dans le dossier, si c'est le cas, il l'affiche, après son affichage il cherche si "Canard1.jpg" existe, si c'est le cas il l'affiche et ainsi de suite. Dans le cas ou une image n'existerais pas le programme doit attendre qu'elle soit existance, donc si "Canard3.jpg" n'xiste pas, le programme tourne en boucle pour vérifier son existence, lorsqu'elle existe il l'affiche et peut alors continuer. Le problème c'est que mes image ne s'affiche pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    package essai;
     
    import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.Graphics2D;
    import java.awt.Image;
    import java.awt.Toolkit;
    import java.io.File;
    import javax.swing.JPanel;
     
     
    public class Visualisation extends Thread {
        private Graphics g;
        public boolean enCours=true;
        File file;
        Image img;
        int i=0;
     
        public Visualisation() {
        }
     
        public Visualisation(Graphics g) {
            this.g=g;
     
        }
     
        public void run(){
            enCours=true;
            do{
                testExistenceImage();
            }
            while(enCours);
        }
     
        private void testExistenceImage(){
            while(true){
                file=new File("Q:\\photos\\Canard"+i+".jpg");
                if (file.exists()==true){
                    afficherImage(this.g);
                    i++;
                }
            }
        }
     
        private void afficherImage(Graphics g) {
     
            img=Toolkit.getDefaultToolkit().getImage(file.getPath()) ;
            g.drawImage(img, 10,30,450,320,null);
     
            try {
                this.sleep(500);
            } catch (InterruptedException ex) {
                ex.printStackTrace();
            }
     
     
        }
     
    }

  2. #2
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    237
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2002
    Messages : 237
    Points : 185
    Points
    185
    Par défaut
    Juste pour comprendre :

    Le "while(true)" n'est jamais arrêté par un "break" ?
    Et pourquoi fais-tu un do-while ?
    Et la variable "enCours" n'est jamais mis à jour ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 66
    Points : 41
    Points
    41
    Par défaut
    Non le while true n'est jamais arrêter
    J'ai rajouter la méthode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        public void stopTrajet(){
            this.enCours=false;
     
        }
    pour modifier lavariable enCours.

    Mais bon le problème ne vient pas de là malheureusement

  4. #4
    Membre habitué
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2004
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2004
    Messages : 102
    Points : 156
    Points
    156
    Par défaut
    Tu peux nous le donner le code d'utilisation de ta classe ?
    Il est assez dangereux de partager la variable "Graphics" entre 2 threads.
    A+
    H.

Discussions similaires

  1. [2.x] Mes images ne s'affichent pas
    Par SMohamed6 dans le forum Symfony
    Réponses: 3
    Dernier message: 27/08/2014, 13h33
  2. Réponses: 2
    Dernier message: 05/03/2010, 10h19
  3. Mes images ne s'affichent pas
    Par jojo1000 dans le forum Langage
    Réponses: 7
    Dernier message: 15/12/2009, 09h45
  4. mes images ne s'affichent pas
    Par gaya102 dans le forum Débuter
    Réponses: 5
    Dernier message: 06/03/2009, 16h38
  5. [HTML Workshop] Mes images ne s'affichent pas
    Par lamarre aisha dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 25/10/2005, 13h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo