Images réactives et popup

Résolu
Signaler
Messages postés
13
Date d'inscription
mardi 17 juillet 2007
Statut
Membre
Dernière intervention
23 mai 2008
-
 Utilisateur anonyme -
Bonjour,
voilà 3 jours que je cherche désespérement à créer une applet internet un peu spéciale. Elle est composée de deux images réactives misent cote à cote qui lorsque l'on passe dessus avec la souris, affiche un popup. J'arrive à afficher ses deux images via des JLabels et j'y ajoute un addMouseListener.
L'évènement est  un mouseEntered (enfin si cela correspond bien au signal de la souris passant sur le Label) qui renvoie une variable i=1 ou i=2 en fonction du label vers un JPopup Menu. Le résultat dans une page internet: je n'ai que les deux images, le reste ne marche pas. Pourriez vous m'éclairer car là je n'y comprends plus rien du tout.. Merci

3 réponses


Essaie de mettre le "listener" directement sur l'instance de JApplet. Ensuite, descends dans la hiérarchie des composants, essaie sur jPanel1. Quelle version de Java utilises-tu? Est-ce du code généré par un IDE que tu me montres là?

TUER : http://tuer.tuxfamily.org/tuer.php

yeah! vive java

Bonjour

Essaie de poser ton MouseListener sur le composant qui contient des 2 JLabels pour voir s'il réagit. Essaie de voir ce qui se passe quand tu utilises un MouseMotionListener.

TUER : http://tuer.tuxfamily.org/tuer.php

yeah! vive java
Messages postés
13
Date d'inscription
mardi 17 juillet 2007
Statut
Membre
Dernière intervention
23 mai 2008

Cela ne marche pas non plus, je poste mon code qui me semble juste à première vue (mais je peux me tromper), j'ai occulté le code d'affichage de JPopup Menu pour simplifier dans un premier temps. Merci pour votre aide, franchement c'est sympa parce que je galère. Je prog sous VB et C++ .net d'habitude mais là je vois pas...

package accueil;


/**
 *
 * @author  Administrateur
 */
public class menu extends javax.swing.JApplet {
    
    public void init() {
        try {
            java.awt.EventQueue.invokeAndWait(new Runnable() {
                public void run() {
                    initComponents();
                }
            });
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
    
    private void initComponents() {


        smenu = new javax.swing.JPopupMenu();
        jPanel1 = new javax.swing.JPanel();
        lab1 = new javax.swing.JLabel();
        lab2 = new javax.swing.JLabel();


        lab1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/images/mrub_a1.jpg"))); // NOI18N
        lab1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseEntered(java.awt.event.MouseEvent evt) {
                lab1MouseEntered(evt);
            }
        });


        lab2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/images/mrub_a2.jpg"))); // NOI18N
        lab2.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseEntered(java.awt.event.MouseEvent evt) {
                lab2MouseEntered(evt);
            }
        });


        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(lab1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(lab2)
                .addContainerGap(117, Short.MAX_VALUE))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(lab2)
                    .addComponent(lab1))
                .addContainerGap(75, Short.MAX_VALUE))
        );


        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(130, Short.MAX_VALUE))
        );
    }


    private void lab1MouseEntered(java.awt.event.MouseEvent evt) {

}


    private void lab2MouseEntered(java.awt.event.MouseEvent evt) {

}
    
    
    private javax.swing.JPanel jPanel1;
    private javax.swing.JLabel lab1;
    private javax.swing.JLabel lab2;
    private javax.swing.JPopupMenu smenu;
}