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

2D Java Discussion :

Affichage de cercles sur un fond de carte


Sujet :

2D Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Août 2006
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 85
    Points : 152
    Points
    152
    Par défaut Affichage de cercles sur un fond de carte
    Bonjour,

    J'ai besoin de :
    • Afficher un fond de carte
    • Y placer des ronds (ou des rectangles, peu importe)
    • Les faire changer de couleur à un instant donné (pour simuler le passage d'une voiture à la position du cercle par exemple)


    J'arrive sans soucis à modifier un JPanel en ajoutant un paintComponent() pour afficher le fond de carte.

    Cela devient plus dur quand je veux placer mes ronds de couleurs. J'ai utilisé une boucle dans paintComponent() pour créer des ronds avec Ellipse2D mais je n'ai ensuite trouvé aucun moyen de changer la couleur d'un cercle donné.

    J'ai donc décidé de créer un dérivé de JButton que je style à nouveau avec paintComponent et que je place sur ma carte au endroits voulus. On peut dire que ça marche même si le résultat ne me plaît pas tant que ça visuellement

    Je me suis donc attaqué à la simulation de parcours. En gros, je change la couleur d'un bouton, j'attends 1 seconde, puis je change la couleur du suivant. Là ça se corse, j'ai utilisé Thread.sleep() et mes deux boutons attendent que la seconde soit passée pour s'allumer en même temps !

    Quelles librairies utiliseriez-vous pour régler mon soucis ?

  2. #2
    Membre confirmé Avatar de ngpub
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 449
    Points : 505
    Points
    505
    Par défaut
    Thread.sleep() dans le thread d'affichage c'est pas bien, pas bien du tout !
    Si tu veux faire une pose dans l'affichage utilise un Timer sinon passe par un autre thread.

    je n'ai ensuite trouvé aucun moyen de changer la couleur d'un cercle donné
    Pour que ça se passe bien, tes cercles doivent dépendre d'une modélisation qui contient l'info sur l'état de chaque cercle.

  3. #3
    Expert confirmé
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Points : 4 539
    Points
    4 539
    Par défaut
    Citation Envoyé par tbassetto Voir le message
    créer des ronds avec Ellipse2D mais je n'ai ensuite trouvé aucun moyen de changer la couleur d'un cercle donné.

    J'ai donc décidé de créer un dérivé de JButton que je style à nouveau avec paintComponent et que je place sur ma carte au endroits voulus. On peut dire que ça marche même si le résultat ne me plaît pas tant que ça visuellement
    tu peux utiliser la méthode

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    g2D.setPaint(new Color. (...,...,....));
    Citation Envoyé par tbassetto Voir le message

    J'ai donc décidé de créer un dérivé de JButton que je style à nouveau avec paintComponent et que je place sur ma carte au endroits voulus. On peut dire que ça marche même si le résultat ne me plaît pas tant que ça visuellement
    je pense pas que ça sera une bonne idée . tu aura plusieurs beug d'affichage.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Août 2006
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 85
    Points : 152
    Points
    152
    Par défaut
    Ok merci pour vos retours, je vais voir ça.

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

Discussions similaires

  1. Affichage sur écran avec deux carte ATI
    Par dleclere dans le forum Matériel
    Réponses: 0
    Dernier message: 02/02/2009, 19h11
  2. Affichage d'une image de fond sur une JFrame
    Par nashpimp dans le forum Agents de placement/Fenêtres
    Réponses: 21
    Dernier message: 04/08/2008, 15h26
  3. zone de couleur variable sur fond de carte
    Par jderoque dans le forum IHM
    Réponses: 6
    Dernier message: 12/06/2008, 16h30
  4. Affichage d'une image de fond sur un site
    Par eugiragal dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 20/12/2006, 18h43
  5. Réponses: 12
    Dernier message: 09/06/2006, 07h27

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