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

AWT/Swing Java Discussion :

JPanel avec image de fond et composants au dessus


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 84
    Par défaut JPanel avec image de fond et composants au dessus
    Bonjour,

    Dans mon projet je veux avoir un JPanel "dans" lequel je veux dessiner. Ça c'est bon.
    Par contre je voudrait ajouter des composants a ce panel pour faire une interface un peu travaillée. Ces composant doivent être au dessus de l'image que je dessine.

    Mon problème est que quoi que j'ajoute a mon panel rien ne s'affiche. Tout est "effacer" par ma méthode de dessin de puisque je fait un

    En gros c'est ça :

    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
     
     
    public dessinerImG(bufGr,Largeur,Hauteur)
    {
    ...
    g.setColor(bkColor);
    g.fillRect(0,0,w,h);
    ...
    }
     
     
    public dessinerPanel(Largeur,Hauteur)
    {
    bufImg = new BufferedImage(Largeur,Hauteur,BufferedImage.TYPE_INT_RGB);
    bufGr = bufImg.createGraphics();
    dessinerImG(bufGr,Largeur,Hauteur)
    paint(bufImg.createGraphics());
    }
    Comment organiser le processus de dessin pour pouvoir dessiner le fond de mon panel sous les autres composants de mon panel ?

    Merci

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,



    Le dessin d'un composant Swing se fait via la méthode paintComponent(). Donc je ne comprend pas l'utilité de ces méthodes ni comment tu les utilises...


    a++

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 84
    Par défaut
    Bonjour adiGuba,

    en fait ma méthode dessinerPanel est appelée suite a des mouvements de la souris pour zoomer sur l'image.

    En fait je voudrais que cela se passe de la façon suivant :
    1 - mouvement souris
    2 - dessin de l'image dans le panel
    3 - dessin des composants du panel


    actuelement :
    1 - mouvement souris
    2 - dessinerPanel()

    Je veux bien utiliser paintComponent, mais je ne vois pas comment faire dans ce cas.

    (Pour faire des dégradés dans mes panel je surcharge déjà paintComponent de certains panel.)

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Ce n'est pas comme cela que ca se passe...

    Tout le dessin doit se faire dans paintComponent().

    Si tu veux gérer un zoom, il faut modifier la valeur du zoom et appeler repaint() qui va lui-même demander à ce que le composant soit redessiné...

    a++

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 84
    Par défaut
    Donc je met l'appel a a ma méthode dessinerPanel() dans paintComponent() ?

Discussions similaires

  1. Réponses: 6
    Dernier message: 18/05/2010, 16h57
  2. Tableau d'entiers avec images en fond
    Par loic72 dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 24/09/2006, 19h29
  3. [WinForms]Lenteur d'affichage formulaire avec image de fond
    Par olixelle dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 06/09/2006, 14h06
  4. [VB.NET]TreeView avec image de fond ou couleur transparent
    Par m-mas dans le forum Windows Forms
    Réponses: 3
    Dernier message: 23/05/2006, 14h53
  5. boîte de dialogue avec image de fond + texte
    Par Eugénie dans le forum MFC
    Réponses: 13
    Dernier message: 31/08/2004, 13h32

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