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

Agents de placement/Fenêtres Java Discussion :

background pour une JFrame


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut background pour une JFrame
    Bonjour,
    j'ai créé une JFrame contenant un Jpanel contenant lui meme des boutons et un Jlabel.
    Je réussis à mettre une image en fond de ma Jframe, mon soucis est que celle ci est masqué au moment du layout, j'ai beau mettre les boutons et le Jlabel transparents, cela ne change rien, les boutons disparaissent certes mais une surface grisé recouvre l'image.
    Ma question est donc simple, est il possible d'ajouter un fonds unique pour tout les composants de ma jframe?
    Merci d'avance.

    Voici mon code:
    ...
    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
    JPanel panel = new JPanel()
    		{
    			protected void paintComponent(Graphics g)
    			{       g.drawImage(icon.getImage(), 0, 0, null);
    				super.paintComponent(g);
    			}
    		};
    		panel.setOpaque( false );
     
     
            Scroll = new JScrollPane(panel);
            getContentPane().add(Scroll);
     
            GroupLayout layout = new GroupLayout(getContentPane()); 
     
            getContentPane().setLayout(layout);
    ...
    .
    .

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 87
    Par défaut
    As tu essayé de faire un this.paint(); ou this.repaint(); ?

  3. #3
    Membre émérite Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut
    plutot revalidate() ... mais je n'ai pas très bien saisi le problème

  4. #4
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    je ne pense pas que paint et repaint soient la solution, mon probleme pour faire simble est de creer une fenetre avec en fond une image sur laquelle je superpose plein de boutons. J'arrive en fait a faire cela, mon soucis c'est que les boutons masquent l'image et j'ai beau les rendre transparent, une zone grisée couvre tout de meme l'image...

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

    Informations forums :
    Inscription : Avril 2006
    Messages : 87
    Par défaut
    Ah d'accord, je n'avais pas saisi ça, tu peux utiliser la fonction .setVisible(false); sur les composants que tu veux cacher.

  6. #6
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Bonjour, plutôt que setOpaque(false) essai setContentAreaFilled(false). Je n'ai pas testé cette méthode mais je l'ai trouvée sur le forum de sun.

  7. #7
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 55
    Par défaut
    Si il met setVisible(false), il ne pourra plus utiliser ses boutons !

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 87
    Par défaut
    Oui, je ne l'avais pas vu sous cet angle là, je pensais qu'il fallait les masquer pendant une action par exemple, donc apparement, il faut que les boutons soient transparents mais utilisables...Donc pas totalement transparent.

  9. #9
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    je viens de tester setContentAreaFilled(false) ainsi que setopaque(false) mais ça me laisse une surface grisé et je ne vois pas l'image.
    Est ce au moment ou je créé un:
    GroupLayout layout = new GroupLayout(getContentPane());
    cela ne me superpose pas automatique cette surface grisé sur mon image?

  10. #10
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    je pense avoir trouvé la source du probleme...cela venait d'une confusion dans la creation de mes conteneurs, Merci pour votre aide

Discussions similaires

  1. Plusieurs background pour une extensibilité d'un div
    Par SKone dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 01/05/2012, 02h20
  2. Réponses: 3
    Dernier message: 06/03/2008, 15h48
  3. solution pour "verouiller" une JFrame
    Par azzhunter dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 05/04/2006, 09h40
  4. Quel classe pour créer une barre en bas d'une JFrame
    Par daninho dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 01/02/2006, 09h30
  5. Taille minimum pour une JFrame ou une JInternalFrame
    Par sixkiller dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 30/11/2004, 15h26

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