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 :

Besoin d'aide pour mon appli


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 66
    Par défaut Besoin d'aide pour mon appli
    Je suis débutant en java et j'essai de créer une application dans laquelle je doit afficher une image.

    J'ai une classe fenetre qui crée un JFrame, une classe AfficheImage qui permet de charger et d'afficher une image et une classe test qui permet de lancer l'application. Pour l'instant j'arrive a afficher ma fenetre mais pas l'image, que doit-je rajouter dans ma classe test pour lancer l'affichage de l'image?

    ma classe test :
    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
     
     
    package javaapplication2;
     
     
    public class test {
     
     
        public test() {
        }
     
     
     
        public static void main(String[] args) {
     
    Fenetre frame = new Fenetre();
     
    AfficheImage Im=new AfficheImage();
     
    frame.setVisible(true);
    }
     
        }
    ma classe afficheImage :
    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
    package javaapplication2;
     
    import java.awt.* ;
    import javax.swing.JFrame;
     
     
    public class AfficheImage extends Fenetre   {
     
        Image image;
     
     
        public AfficheImage() { 
        }
     
            public void paint(Graphics g) {
            image=Toolkit.getDefaultToolkit().getImage("canard.jpg") ;
            g.drawImage(image, 150,30,200,200,this);
        }
        public static void main(String[] args) {
            new AfficheImage();
        }
     
    }
    ma classe fenetre:
    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
     
     
    package javaapplication2;
     
     
    import java.awt.*;
    import java.lang.*;
     
    public class Fenetre extends javax.swing.JFrame {
     
        /** Creates new form JFrame */
       public Fenetre() {
     
            initComponents();
     
        }
     
     
        private void initComponents() {
            jButton1 = new javax.swing.JButton();
     
            setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
            jButton1.setText("jButton1");
     
            org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
            getContentPane().setLayout(layout);
            layout.setHorizontalGroup(
                layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                .add(layout.createSequentialGroup()
                    .add(30, 30, 30)
                    .add(jButton1)
                    .addContainerGap(297, Short.MAX_VALUE))
            );
            layout.setVerticalGroup(
                layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
                    .addContainerGap(266, Short.MAX_VALUE)
                    .add(jButton1)
                    .addContainerGap())
            );
            pack();
        }
     
     
     
     
        private javax.swing.JButton jButton1;
     
     
    }
    merci d'avance

  2. #2
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    L'image est dans le fichier .jar ?
    essayez:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    image=Toolkit.getDefaultToolkit().getImage("/canard.jpg") ;

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 66
    Par défaut
    Non le problème ne vient pas de là car lorsque je met le code d'affichage de l'image directement dans ma classe Fenetre, ca fonctionne.

  4. #4
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Pourquoi as-tu un main dans la classe afifcheImage mais aussi dans la classe test

    Il en faut juste un dans ta classe test. Après, j'ai pas regardé plus en détails ton problème.

    ps : dans la classe fenetre, tu pourrais remonter ça un peu plus haut dans le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    private javax.swing.JButton jButton1;

  5. #5
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Tu as deux main() ! Pourquoi ?
    De plus dans aucun des deux tu ne rend ta fenêtre AfficheImage visible...

    a++

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 66
    Par défaut
    c'est vrai que j'avais deux main, erreur de débutant .

    J'ai modifié le code avec vos conseils, ca fonctionne , le problème c'est que maintenant j'ai une fenetre qui s'affiche avec le bouton1 et une autre qui s'ouvre avec l'image.

    Le nouveau code :

    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
     
     
    package javaapplication2;
     
    public class test {
     
        public test() {
        }
     
        public static void main(String[] args) {
     
            Fenetre frame = new Fenetre();
     
            AfficheImage  Img= new AfficheImage();
            frame.setVisible(true);
            Img.setVisible(true);
     
        }
     
    }
    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
     
    package javaapplication2;
     
    import java.awt.* ;
    import javax.swing.JFrame;
     
     
    public class AfficheImage extends Fenetre   {
     
        Image image;
     
        public AfficheImage() {
        }
        public void paint(Graphics g) {
            image=Toolkit.getDefaultToolkit().getImage("canard.jpg") ;
            g.drawImage(image, 150,30,200,200,this);
        }
     
     
    }

Discussions similaires

  1. besoin d'aide pour mon programme
    Par pouyoudu17 dans le forum Débuter avec Java
    Réponses: 11
    Dernier message: 28/05/2007, 22h18
  2. Besoin d'aide pour mon premier article tex
    Par amel666 dans le forum Erreurs - Avertissements
    Réponses: 2
    Dernier message: 21/02/2007, 13h18
  3. Spring EJB RMI besoin de conseils pour mon appli
    Par illmonkey dans le forum Java EE
    Réponses: 1
    Dernier message: 29/01/2007, 05h00
  4. besoin d'aide pour mon future site
    Par vulquin dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 11/06/2006, 20h33
  5. Besoin d'aide pour mon rpg en javascript
    Par CyberTwister dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 07/04/2006, 13h26

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