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

Agents de placement/Fenêtres Java Discussion :

Animation sur un GridbagLayout


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 121
    Par défaut Animation sur un GridbagLayout
    Bonjour tout le monde,

    Je souhaite realiser un puissance 4 en java.

    J'ai donc créé :
    - une classe Case qui hérite de JPanel et qui contient l'image de la case.
    - une classe PanneauDamier qui hérite de JPanel. Cette classe contient 6x7 cases qui sont ordonnées avec un GridBagLayout.
    - une classe Vue qui hérite de JFrame et qui contient un PanneauDamier + un JLabel et un JButton. Tout cela ordonné avec un autre GridBagLayout.

    Quand j'exécute mon programme tout s'affiche et je suis content.
    Le problème est que je n'arrive pas à rajouter l'animation des pions qui tombent en plus de tout cela.

    J'ai vu dans les tutoriels Java comment faire une animation simple en faisant des repaint successifs d'un Graphics fillOval() dont on fait varier les coordonnées.


    Le problème est que quand j'essai de faire cela sur le PanneauDamier, rien ne se passe. Je suppose que le GridBagLayout ou l'image des cases passe par dessus ce que j'essai de dessiner.


    Auriez-vous une idée de comment résoudre ce problème ? Je ne doit pas être le premier à avoir ce problème, désolé donc si la question a déjà trouvé une réponse sur le forum, mais je n'ai pas réussi à la trouver


    Merci d'avance !

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 121
    Par défaut
    Je viens de trouver dans la FAQ qu'un BufferedImage pourrait peut être me permettre de régler mon problème.

    J'ai maintenant un soucis pour charger une image dans un BufferedImage.

    Dans la FAQ il est écrit d'utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BufferedImage image = ImageIO.read( /* File, URL ou InputStream */ );
    J'ai l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    incompatible types
    found : javax.imageio.ImageIO.read
    required : java.awt.image.BufferedImage
    C'est normal ?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    406
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 406
    Par défaut
    Pour charger ton image, le code suivant ne marche 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
     
    // On déclare une image
    BufferedImage image = null;
     
    try {
          // On charge l'image
          image = ImageIO.read(new File("./images/coucou.png"));
     
    // On catche les possibles exceptions
    } catch (IOException exception) {
          // On affiche la pile d'appel
          exception.printStackTrace();
     
          // On affiche un message
          System.out.println("L'image n'a pas été lue");
     
    } catch (IllegalArgumentException exception) {
          // On affiche la pile d'appel
          exception.printStackTrace();
     
          // On affiche un message
          System.out.println("Le fichier image est null");
     
    } catch (NullPointerException exception) {
          // On affiche la pile d'appel
          exception.printStackTrace();
     
          // On affiche un message
          System.out.println("L'image n'a pas été trouvée");
     }
    Crée un dossier "images" à la racine de ton projet et met une image nommée "coucou.png" dedans.
    Ce code marche chez moi.

Discussions similaires

  1. [FLASH MX] Synchroniser une animation sur un long mp3
    Par calogerogigante dans le forum Flash
    Réponses: 9
    Dernier message: 05/07/2006, 11h37
  2. Probleme : load une animation sur une autre
    Par Basicman dans le forum Intégration
    Réponses: 2
    Dernier message: 26/04/2006, 15h14
  3. [FLASH MX] Animation sur bouton en boucle
    Par mascagne dans le forum Flash
    Réponses: 3
    Dernier message: 04/03/2006, 10h36
  4. [awt] Ajouter un Insets sur un GridBagLayout
    Par dib258 dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 22/01/2006, 23h24
  5. [UI]Aide sur les GridBagLayout
    Par leup dans le forum Agents de placement/Fenêtres
    Réponses: 8
    Dernier message: 19/05/2005, 17h35

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