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

Langage Java Discussion :

problème de cast!


Sujet :

Langage Java

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    114
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 114
    Points : 66
    Points
    66
    Par défaut problème de cast!
    Bonjour,

    J'ai un petit souci de cast je crois, j'ai l'erreur java.lang.ClassCastException!
    J'explique un peu le contexte.

    J'ai créé une classe MyButton, qui dérive de JButton (normal), et dedans je passe en paramètre un objet Photo (dedans on y trouve le nom de la photo, son chemin, sa taille) et un indice!
    A chaque fois que je crée un bouton, je le mets dans une liste (de type ArrayList). Ensuite, faut que je place chaque bouton (présent dans la liste) dans une interface, pour cela j'utilise un GridBagLayout,
    contraintes.gridy = 17;
    contraintes.gridx = 2;
    MyButton button = new MyButton();
    button = (MyButton) listPhoto.get(0); // listPhoto, c'est ma liste de bouton!
    this.add(button,contraintes);

    Le problème, c'est que dans une liste, on a des objets, donc à chaque fois que je prends un objet, je le caste en un bouton de type MyButton, mais c'est là le problème ... C'est là que vient ma faute apparemment! Si qqn peut m'aider ...

    Mici.

  2. #2
    iuz
    iuz est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 114
    Points : 110
    Points
    110
    Par défaut
    Il faudrait un peu plus de code, car là c'est juste.

    Je présume que l'Exception vient de là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    button = (MyButton) listPhoto.get(0);
    ClassCastException veut dire que tu veux récupérer un Objet dans une classe dont il n'est pas l'instance. Donc listPhoto ne contient pas de MyButton (au moins à l'indice 0).

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2004
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2004
    Messages : 138
    Points : 125
    Points
    125
    Par défaut
    Tu peux pas caster un object de type photo en un bouton... (si tu met bien des photos dans ton listPhoto)
    N'est pas...

  4. #4
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    114
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 114
    Points : 66
    Points
    66
    Par défaut
    J'te remercie iuz, tu m'as fait comprendre ma faute. J'explique pour ceux qui tomberont sur le même problème :

    Dans la boucle for ci dessous, j'ai deux liste, ma listPhoto et ma listButton, elles sont différentes, or hier, c'était les mêmes, c'est à dire que je ne les avait po différencié, ce qui est absurde de ma part vu que la première list contient mes photos, c'est de celle là où je vais créer mes boutons, et donc la seconde contiendra mes boutons de photos, donc il m'en faut bien deux lists différentes et po une seule!
    for (int i=0;i<nbPhoto;i++) {
    Photographie photo = new Photographie();
    photo = (Photographie) listPhoto.get(i); // je retire la photo n°i de ma list
    String chemin = photo.getPath();
    listButton.add(new MyButton(i,photo)); // je place mon nouveau bouton créé dans un nouvelle list, la list de bouton cette fois çi
    System.out.println("bouton n°"+i+" cree");
    } // end for


    Mici de m'avoir éclairé : )

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#]problème de casting
    Par Blo0d4x3 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 07/05/2006, 15h56
  2. [CASTS]problème de cast de Time
    Par DeVoN dans le forum Langage
    Réponses: 7
    Dernier message: 22/02/2006, 17h24
  3. [JDBC Driver][JSTL] Problème de cast de données
    Par GyLes dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 27/09/2005, 10h00
  4. Problème de cast/serialization/externalization ?
    Par Linlin dans le forum CORBA
    Réponses: 1
    Dernier message: 06/12/2004, 16h46
  5. [C#] Problème de casting de @IDENTITY
    Par bilb0t dans le forum Accès aux données
    Réponses: 7
    Dernier message: 03/09/2004, 09h42

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