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

avec Java Discussion :

Un objet qui ne s'affiche pas


Sujet :

avec Java

Vue hybride

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

    Informations forums :
    Inscription : Avril 2010
    Messages : 99
    Par défaut Un objet qui ne s'affiche pas
    Bonjour ,
    Je voudrai comparé deux objets , un provenant d'une arraylist qui en la parcourant récupérerait un entier et comparer celui-ci avec un autre entier ,
    Mais je n'arrive pas à obtenir correctement cette entier grâce à mon getteur/setteur , je ne comprend pas l'erreur. En faite je voudrai tester ces valeurs si ce sont les même alors la méthode boolean renverrai true (Dans TestMaclasse , normalement tout est bon ailleur)
    Et j'ai une erreur de compilation dans cette même classe à la ligne 91 dont je ne comprend pas l'origine
    Cordialement
    Merci d'avance
    Fichiers attachés Fichiers attachés

  2. #2
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Par défaut
    Citation Envoyé par tonytrua Voir le message
    Bonjour ,
    Je voudrai comparé deux objets , un provenant d'une arraylist qui en la parcourant récupérerait un entier et comparer celui-ci avec un autre entier ,
    Mais je n'arrive pas à obtenir correctement cette entier grâce à mon getteur/setteur , je ne comprend pas l'erreur. En faite je voudrai tester ces valeurs si ce sont les même alors la méthode boolean renverrai true (Dans TestMaclasse , normalement tout est bon ailleur)
    Et j'ai une erreur de compilation dans cette même classe à la ligne 91 dont je ne comprend pas l'origine
    Cordialement
    Merci d'avance
    Je suis désolé mais j'ai quelque peu la flemme de mettre en place ton code Java. Pourrais tu afficher l'erreur de compilation que ton compilateur t'affiche et cibler le code compromettant en le citant ici avec les balises [code] ?
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 99
    Par défaut
    Bonjour,
    En faite j'ai réussis a corriger toutes les erreurs de compilations mais maintenant maChenille ne se dessine plus :/
    Et quelques précision en faite si ma chenille rencontre une pierre c'est a dire que rencontre()=true alors elle ferait demie tour

    voila mon code
    Cordialement
    Merci d'avance

    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
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    import java.awt.BorderLayout;
     
    public class TestMaclasse extends JApplet {
    	private JPanel panelDeBoutons;
    	private JButton augmenterPierre;
    	private JButton reduireAngle;
    	private JButton augmenterAngle;
    	private JButton deplacerVite;
    	private JButton deplacer;
    	private JButton deplacerTresVite;
    	private JPanel canvas;
    	private ArrayList<Maclasse> listRectangles;
    	 private Chenille maChenille  ;
    	 boolean a;
     
    	private class Canvas extends JPanel {
     
    	public TestMaclasse() {
    		listRectangles = new ArrayList<Maclasse>();
     
    			}
    	public boolean Rencontre(){for(Maclasse pierre : listRectangles){if(pierre.getX()==maChenille.getXTete()&&pierre.getY()==maChenille.getYTete()){a=true;}
    	else{a=false;}}
    	return a;}
     
     
     
     
     
     
    	@Override
    	public void init() {
    		setSize(500, 500);
    		setLayout(new BorderLayout());
    		panelDeBoutons = new JPanel();
    		panelDeBoutons.setLayout(new FlowLayout(FlowLayout.CENTER));
    		 maChenille = new Chenille(15,10,45,Color.blue);
    		augmenterPierre = new JButton("+ Pierre");
    		augmenterPierre.addActionListener(new ActionListener(){
    			@Override
    			public void actionPerformed(ActionEvent e) {
    				Maclasse rect = new Maclasse();
    				rect.setX((int) (Math.random() * 500));
    				rect.setY((int) (Math.random() * 500));
    				rect.setHauteur(3);
    				rect.setLargeur(3);
    				rect.setColor(Color.BLUE);
    				listRectangles.add(rect);
    				canvas.repaint();}
    									}
    	);
     
     
    		panelDeBoutons.add(augmenterPierre);
    		reduireAngle = new JButton("-");
    		reduireAngle.addActionListener(new ActionListener(){
    @Override
    				public void actionPerformed(ActionEvent e) {if(maChenille.getAngleDeVision()>0) {maChenille.setAngleDeVision((maChenille.getAngleDeVision())-5) ; canvas.repaint();}}}
     
     
    		);
    panelDeBoutons.add(reduireAngle);
     
    		;
     
    		augmenterAngle = new JButton("+");
    		augmenterAngle.addActionListener(new ActionListener()         {
    			public void actionPerformed(ActionEvent e) {if (maChenille.getAngleDeVision()<180){maChenille.setAngleDeVision((maChenille.getAngleDeVision())+5) ;
    			canvas.repaint();}}}
    		);
    		panelDeBoutons.add(augmenterAngle);
    		deplacer = new JButton("GO");
    		deplacer.addActionListener(new ActionListener(){
    			public void actionPerformed(ActionEvent e) {maChenille.deplacer();
    			if(true==Rencontre()){maChenille.setAngleDeVision(-maChenille.getAngleDeVision());}canvas.repaint() ;}
    		});
    		panelDeBoutons.add(deplacer);
    		deplacerVite = new JButton("GOO");
    		deplacerVite.addActionListener(new ActionListener(){
    			public void actionPerformed(ActionEvent e) {for(int i=0 ; i<5 ; i++) {maChenille.deplacer();
    			if(true==Rencontre()){maChenille.setAngleDeVision(-maChenille.getAngleDeVision());}canvas.repaint() ;}}
    		});
    		panelDeBoutons.add(deplacerVite);
    		deplacerTresVite = new JButton("GOO");
    		deplacerTresVite.addActionListener(new ActionListener(){
    			public void actionPerformed(ActionEvent e) {for(int i=0 ; i<10 ; i++) {maChenille.deplacer();
    			if(true==Rencontre()){maChenille.setAngleDeVision(-maChenille.getAngleDeVision());}canvas.repaint() ;}}
    		});
    		panelDeBoutons.add(deplacerTresVite);
    	     {
     
    		canvas = new Canvas();
    		canvas.setBackground(Color.WHITE);
    		add(panelDeBoutons, BorderLayout.NORTH);
    		add(canvas, BorderLayout.CENTER);
    		invalidate();
    		validate();
    	}}}

  4. #4
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    J'avoue ne pas savoir comment vous avez réussie à compiler le code que vous nous montré.

    Vous déclarez le constructeur de la classe "TestMaclasse" dans une classe interne à celle-ci, par exemple.
    Certaines de vos variables sont obscure :
    Je vois que la variable est utilisé dans "Rencontre". je suppose donc que son petit nom devrait être "isRencontre" "isDead".
    Mais je reste convaincu que le la fonction rencontre ne devait pas directement setter la propriété.

    Voici deux code identiques :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    		deplacerVite.addActionListener(new ActionListener(){
    			public void actionPerformed(ActionEvent e) {for(int i=0 ; i<5 ; i++) {maChenille.deplacer();
    			if(true==Rencontre()){maChenille.setAngleDeVision(-maChenille.getAngleDeVision());}canvas.repaint() ;}}
    		});
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    		deplacerVite.addActionListener(new ActionListener(){
    			public void actionPerformed(ActionEvent e)
    			{
    				for(int i=0 ; i<5 ; i++)
    				{
    					maChenille.deplacer();
    				}
    				if(true==Rencontre())
    				{
    					maChenille.setAngleDeVision(-maChenille.getAngleDeVision());
    				}
    				canvas.repaint();
    			}
    		});
    Je vous laisse décider du plus lisible.
    D'ailleurs, on constat qu'on vérifie si il y a rencontre qu'après 5 déplacements.
    (je passe sous silence le "5" placer en dur et non avec un variable type "NOMBRE_DEPLACEMENT_POUR_DEPLACE_VITE")

    Sinon Cavans n'a pas besoin d'être une classe interne à votre Apple.
    Et non n'avons pas les classes "Maclasse" et "Chenille".
    Du coup, pour vous aider avec votre code, ce n'est pas simple.

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 99
    Par défaut
    Bonjour,
    Je ne comprend pas votre je laisse sous silence le 5 ?
    Sachant que je l'ai bien fait vérifier à chaque fois dans mon code je l'ai intégrer a la boucle for.
    Et mon code était plus haut dans le dossier zip vu qu'il y avait plusieurs classe et qui marchaient toutes sans erreurs c'était pour ne pas vous encombrer ..
    Cordialement
    La j'ai juste une erreur que je ne comprend pas c'est pourquoi ma chenille ne se créer pas ?
    Cordialement

  6. #6
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Par défaut
    Citation Envoyé par tonytrua Voir le message
    Bonjour,
    Je ne comprend pas votre je laisse sous silence le 5 ?
    Sachant que je l'ai bien fait vérifier à chaque fois dans mon code je l'ai intégrer a la boucle for.
    Il faut plutôt passer par une constante. Elle permettra de cibler l'endroit à modifier lors d'une possible évolution (toujours penser au futur).

    Citation Envoyé par tonytrua Voir le message
    Et mon code était plus haut dans le dossier zip vu qu'il y avait plusieurs classe et qui marchaient toutes sans erreurs c'était pour ne pas vous encombrer ..
    Sauf que tu nous indiques que le problème vient de Chenille mais que tu ne le fournis pas ce code.

    Citation Envoyé par tonytrua Voir le message
    La j'ai juste une erreur que je ne comprend pas c'est pourquoi ma chenille ne se créer pas ?
    Où est l'erreur ? Code de l'exception ? Code d'erreur ?
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

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

Discussions similaires

  1. Un objet JPanel qui ne s'affiche pas.
    Par poppels dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 09/03/2009, 09h54
  2. un objet JPanel qui ne s'affiche pas
    Par dark_geek dans le forum Agents de placement/Fenêtres
    Réponses: 6
    Dernier message: 05/03/2009, 21h41
  3. [Applet] BorderLayout qui ne s'affiche pas
    Par Invité(e) dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 29/04/2004, 11h39
  4. [debutant][Tomcat]Images qui ne s'affichent pas
    Par omega dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 07/04/2004, 09h44
  5. [MFC] Ces fenêtres qui ne s'affichent pas..
    Par Davide dans le forum MFC
    Réponses: 3
    Dernier message: 19/11/2003, 11h30

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