pseudal
Messages postés12Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention10 mars 2006
-
8 mars 2006 à 15:56
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023
-
10 mars 2006 à 12:14
bonjour, je galere actuellement avec la gestion des evenements,
quelqu'un aurait il un exemple de code, où un clic sur un bouton
entraine l'affichage d'un panel dans une fenetre ????
scaryman
Messages postés492Date d'inscriptionvendredi 30 janvier 2004StatutMembreDernière intervention16 mai 200712 8 mars 2006 à 16:56
Salut
Tu peux faire comme ca :
myButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
myPanel.setVisible(true);
}
});
pseudal
Messages postés12Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention10 mars 2006 8 mars 2006 à 17:47
ouai je crois que c'est ce que j'ai fait en gros mais mon probleme est ailleurs je pense,
je crois que c'est un probeleme de communication entre mes classes.
dans une class toolBar j'ai fait ça
<meta http-equiv= "Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="Kate, the KDE Advanced Text Editor">
toolBar.add(button);
button = new JButton();
button.addActionListener(newActionListener() {
public void actionPerformed(ActionEvent e) {
displayResult();
}
});
toolBar.add(button);
}
protected void displayResult() {
bld.panelEvent();
}
et a partir de ça dans mon autre class qui gere mon panel je fait
<meta http-equiv ="Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="Kate, the KDE Advanced Text Editor">
public void panelEvent(){
aPanel.setVisible(true);
}
alors
il y a surement mieux a faire mais bon je ne suis pas encore un expert
en java. en tout cas quand je le compile ya pas de probleme , quand je
le lance non plus mais des que je clic sur le bouton, d'une part mon
panel ne s'affiche pas et d'autre part sur ma console j'ai 20 lignes de
messages d'erreurs du genre
java.lang.NullPointerException
at ToolBar.eventPerformed(ToolBar.java:51)
at ToolBar.actionPerformed(ToolBar.java:40)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
at
javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
at java.awt.Component.processMouseEvent(Component.java:5100)
at java.awt.Component.processEvent(Component.java:4897)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3615)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
at java.awt.Container.dispatchEventImpl(Container.java:1613)
at java.awt.Window.dispatchEventImpl(Window.java:1606)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:480)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
voila voila donc si quelqu'un pouvait aider un debutant en java qui a un peu de mal merci
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 8 mars 2006 à 18:28
Salut,
//impossible d'ajouter le bouton avant de faire le new sinon java.lang.NullPointerException donc ton erreur est normale
toolBar.add(button);
button = new JButton();
button.addActionListener(newActionListener() {
public void actionPerformed(ActionEvent e) {
displayResult();
}
});
toolBar.add(button);//ca oki
}
public void panelEvent(){
//assure toi que aPanel contient une reference valide
//pour le tester fait
System.out.println(aPanel);//si il te renvoi null c'est mort tu as appelé cette methode avant le new
if(aPanel ! = null)
aPanel.setVisible(true);
}
pseudal
Messages postés12Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention10 mars 2006 9 mars 2006 à 11:11
ouai non mais les bouton ils ont des noms different button1, 2 .... ça
c pas le probleme c'etait juste un pb de copier coller, nonvraiment,
j'ai fait des test avec les autres boutns et des chagement de couleurs
ca marche parfaitement dans la meme classe mais des que je fait appel a
une methode dans une autre classe le bouton ne marhce pas
d'ailleurs quand je clic dessus il reste de couleur foncé comme ci je restais clicé dessus alors que non, comprend pas