En bref, mon besoin est d'avoir une image d'arrière-plan dans mon application Java, ainsi que sur un événement, créez d'autres graphiques au-dessus de cette image. P>
Je pensais que j'utiliserais un JPanel pour dessiner l'image d'arrière-plan dans, ajoutez-la à mon jframe le début du programme, puis ajoutez d'autres jannels en plus de cela sur certains événements. Le problème est le swing donne aux JPANELs ajoutés d'abord l'index Z le plus élevé Z, alors que devrait être mon arrière-plan se présente sur tout. P>
Y a-t-il un moyen de contrôler l'index / l'ordre des JPanels ou je vais tout cela complètement faux? p>
4 Réponses :
Vous pouvez utiliser le setComponentzorder () code> pour gérer Z-Commander dans votre application. P>
Cela semble étrange pour ajouter des janières multiples et utiliser Z-Commander. Je vous suggère que vous ajoutez simple ajouter un jPanel avec la méthode de la peinture (graphismes G) écrasée, où vous dessinez l'image correcte en fonction de vos événements.
ou utilisez le CardLayout et ajoutez des jlabels (avec des images différentes), puis lorsque votre Déclencheurs d'événements, utilisez p> pour afficher le jlabel correct. p> p>
Je pensais que j'utiliserais un JPanel pour Dessinez l'image de fond dans, ajoutez-la à mon jframe le début du programme, p> blockQuote>
semble raisonnable. p>
puis ajoutez d'autres jannels au-dessus de que sur certains événements. Le problème Swing donne-t-il d'abord les JPanels l'indice Z le plus élevé, alors que devrait être mon arrière-plan se présente au-dessus de tout. p> blockQuote>
Ajout d'un panneau à un panneau est comme l'ajout d'un autre composant au panneau. Le composant enfant sera peint sur le panneau parental. Il n'est pas nécessaire de jouer avec Z-Order. P>
La clé consiste à définir un gestionnaire de mise en page sur le panneau avec l'image. Ensuite, chaque panneau que vous ajoutez au panneau d'image doit être non opaque de manière à ce que l'image d'arrière-plan soit peinte. P>
Peut-être le panneau de fond peut vous aider. Il rend automatiquement un composant ajouté directement au panneau non opaque. P>
the Jlayeredpane est conçu pour simplement cet objectif. Il vous permet de contrôler l'ordre Z des composants. P>