begin process at 2012 02 14 05:36:21
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Java

 > 

Archives

 > 

Au secours

 > 

Problème avec un vecteur : tout se change en ce qu'on a mis en dernier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème avec un vecteur : tout se change en ce qu'on a mis en dernier

jeudi 5 mai 2005 à 22:13:08 | Problème avec un vecteur : tout se change en ce qu'on a mis en dernier

inquisitor87

Bonjour,
voilà, je vous explique :
J'ai créé un vector dans lequel je désire stocker des contacts(une classe faite exprès). A chaque nouveau contact ajouté, tous les contacts transformés deviennent le dernier contact ajouté. Voici mon code :

//Variables d'usage :
            int i = 0;
            int y = 0;
       
        //FONCTION D'ENREGISTREMENT D'UN NOUVEAU CONTACT
        //On passe les infos des zones de texte au temp.
            MonCarnetAdresses.Contact_temp.nom = jTextField25.getText();
            MonCarnetAdresses.Contact_temp.prenom = jTextField26.getText();
            String x = MonCarnetAdresses.Contact_temp.nom;
            x = x.concat(" ");
            x = x.concat(MonCarnetAdresses.Contact_temp.prenom);
            MonCarnetAdresses.Contact_temp.identify = x;
            MonCarnetAdresses.Contact_temp.anniversaire = jTextField27.getText();
            MonCarnetAdresses.Contact_temp.adresse = jTextArea4.getText();
            MonCarnetAdresses.Contact_temp.tel = jTextField28.getText();
            MonCarnetAdresses.Contact_temp.portable = jTextField29.getText();
            MonCarnetAdresses.Contact_temp.mail = jTextField30.getText();
            MonCarnetAdresses.Contact_temp.msn = jTextField31.getText();
            MonCarnetAdresses.Contact_temp.metier = jTextField32.getText();
            MonCarnetAdresses.Contact_temp.adresse_bureau = jTextArea5.getText();
            MonCarnetAdresses.Contact_temp.tel_bureau = jTextField33.getText();
            MonCarnetAdresses.Contact_temp.site = jTextField34.getText();
            MonCarnetAdresses.Contact_temp.ftp = jTextField35.getText();
            MonCarnetAdresses.Contact_temp.ftp_login = jTextField36.getText();
            MonCarnetAdresses.Contact_temp.ftp_pass = jPasswordField2.getText();
            MonCarnetAdresses.Contact_temp.conjoint = jTextField37.getText();
            MonCarnetAdresses.Contact_temp.conjoint_anniv = jTextField38.getText();
            MonCarnetAdresses.Contact_temp.enfants[0] = jTextField39.getText();
            MonCarnetAdresses.Contact_temp.enfants[1] = jTextField40.getText();
            MonCarnetAdresses.Contact_temp.enfants[2] = jTextField41.getText();
            MonCarnetAdresses.Contact_temp.enfants[3] = jTextField42.getText();
            MonCarnetAdresses.Contact_temp.enfants[4] = jTextField43.getText();
            MonCarnetAdresses.Contact_temp.enfants_anniv[0] = jTextField44.getText();
            MonCarnetAdresses.Contact_temp.enfants_anniv[1] = jTextField45.getText();
            MonCarnetAdresses.Contact_temp.enfants_anniv[2] = jTextField46.getText();
            MonCarnetAdresses.Contact_temp.enfants_anniv[3] = jTextField47.getText();
            MonCarnetAdresses.Contact_temp.enfants_anniv[4] = jTextField48.getText();
            MonCarnetAdresses.Contact_temp.groupe = (String)jComboBox2.getSelectedItem();
                                                                                System.out.println("Le TEMP est a pour identité : "+ MonCarnetAdresses.Contact_temp.identify);
        //Le TEMP est chargé par les panneaux...[OK]
       
           
        //Lecture du tableau de contacts
            if(MonCarnetAdresses.__NB_CONTACT__ != 0);
                {
                while (i < MonCarnetAdresses.__NB_CONTACT__)
                    {
                    MonCarnetAdresses.Contact_avant = (AnoevStructCarnetContact)MonCarnetAdresses.MaListeContacts.get(i) ;
                   
                    System.out.println("Le contact n° "+i+" dans la liste est : "+MonCarnetAdresses.Contact_avant.identify);
                    i++;
                    }
                                                                                  
                }
            MonCarnetAdresses.MaListeContacts.insertElementAt(MonCarnetAdresses.Contact_temp,i);
            //Ajouter dans le vecteur
           
            //Incrementer le nb de contacts :
            MonCarnetAdresses.__NB_CONTACT__ = MonCarnetAdresses.__NB_CONTACT__ + 1;
                                                                                System.out.println("Le nombre de contact est : " + MonCarnetAdresses.__NB_CONTACT__);


Voilà, si vous pouviez m'aider, ce serait très gentil, moi là j'en peux plus....

vendredi 6 mai 2005 à 08:56:26 | Re : Problème avec un vecteur : tout se change en ce qu'on a mis en dernier

dmaillet

pourquoi
insertElementAt(MonCarnetAdresses.Contact_temp,i)

alors que tu pourrais faire simplement un add(MonCarnetAdresses.Contact_temp)
-------------------
dams
-------------------
vendredi 6 mai 2005 à 14:55:05 | Re : Problème avec un vecteur : tout se change en ce qu'on a mis en dernier

xav44

Salut,
Ca ressemble a un probleme de déclaration en "static" la où il faudrait pouvoir instancier. Je crois que si tu a créé ta classe Contact_temp en static et que tu l'ajoute tel quel dans ton vecteur, à chaque modif des attributs de ta classe, tu modifie tous les elements de ton vecteur. En tout cas je chercherais dans ce sens là.

Bon courrage

Xav
vendredi 6 mai 2005 à 14:57:49 | Re : Problème avec un vecteur : tout se change en ce qu'on a mis en dernier

dmaillet

Oui, car tu modifies ton objet Contact_temp
a chaque fois, et donc ton vecteur ne contient que lui...
il est clair que Contact_temp est un objet static de ta classe.
-------------------
dams
-------------------
vendredi 6 mai 2005 à 21:43:30 | Re : Problème avec un vecteur : tout se change en ce qu'on a mis en dernier

inquisitor87

Vous êtes trop forts ! Grâce à vos conseils, j'ai pu me dépétrer. C'est bien qu'en fait, je ne créais pas de nouvelle structure à chaque fois. Donc maintenant c'est bon, ça marche. Mais par contre, bizarre, ma classe était bien publique... Enfin bon, ça marche, c'est le plus important ! Merci encore à tous.
lundi 9 mai 2005 à 11:23:35 | Re : Problème avec un vecteur : tout se change en ce qu'on a mis en dernier

bjdc

"Mais par contre, bizarre, ma classe était bien publique."

MonCarnetAdresses.Contact_temp n'est pas un objet, c'est une reference vers un objet. C'est legerement different et cela explique ton probleme :

MonCarnetAdresses.MaListeContacts.insertElementAt(MonCarnetAdresses.Contact_temp,i);

Tu ajoutes ici la reference vers l'objet dans ton vector. Mais cela ne duplique pas un nouvel objet, cela ne fait que copier l'"adresse" de ton objet.

deux solutions pour regler ca :
- creer un nouveau Contact_temp a chaque fois si la creation d'un Contact ne depend pas d'autres parametres

- creer une methode clone() qui renvoie une copie et faire un
MonCarnetAdresses.MaListeContacts.insertElementAt(MonCarnetAdresses.Contact_temp.clone(),i);




jeudi 23 février 2006 à 12:08:10 | Re : Problème avec un vecteur : tout se change en ce qu'on a mis en dernier


Cette discussion est classée dans : temp, gettext, enfants, contact, moncarnetadresses


Répondre à ce message

Sujets en rapport avec ce message

insertion manquante [ par attouf1988 ] Salut les amis svp si quelque un a le temp pour m'aider mon probleme est que l'insertion dans une base de donne manque une colonne voila code try{ Methode et classe [ par walkn ] Bonjour, je suis toujours avec des problemes similaires. J'ai deux fenetres (donc deux classes), la classe Demarrage(classe principale) et la classe extraire les combianisons dse éléments d'un tableau java [ par PinkyRose ] J'ai besoin d'extraire les combinaisons possibles entre les éléments d'un tableau exemple: tableau [A, B, C] les combinaisons possibles sont [A] [B] [ problème d'affichage [ par ramy04804001 ] Salut, je veut afficher des contenus des balises mais j'ai trouver une problème c que chaque Foix il parcours le dossier il m'affiche chaque solution problème de critère de recherche [ par ramy04804001 ] Salut, je veut faire une recherche dans un ensemble de fichier xml avec jdom je parcours une dossier de fichier xml mon problème c que mon programme jdom [ par johnjjj ] bonjour je souhaite votre aide j'ai un tableau de string temp[] je veux enregistrer sou format xml j'ai utiliser jdom dans setText je veux affic Question sur l'héritage [ par seb111983 ] Bonsoir, Je débute en Java, et quelque concept reste flou. J'ai crée une interface graphique avec swing, dans laquelle il y a une classe (appelons la Requête update avec Une Base Access et Java [ par kharachou ] Bonjour J'ai tenté d'utiliser Java avec Access en utilisant ODBC. La connexion de passe bien, les insertions d'enregistrements et les requêtes selec calcul du temps d'execution [ par rababfatma ] bonjour! je voudrais calculer le temps d'exécution nécessaire pour le calcule du produit de deux matrices pour cela je remplie les 2 matrices carrées requete ne fonctionne pas [ par 208893 ] bonjour mes amies; j'ai un problème au niveau du requête sql elle affiche un message d'erreur lorsque je l'exécute voila le code [code=java]savebtn.a


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales