Witam.
Mam pewien problem, otóż stworzyłem sobie komponent ZawodnikBean w którym korzystam z jPopupMenu i teraz nie wiem jak sprawdzić która opcja z tego menu została wybrana. Poniżej kod komponentu:
public class ZawodnikBean extends javax.swing.JPanel {
JPopupMenu popMenu1 = new JPopupMenu();
JPopupMenu popMenu2 = new JPopupMenu();
JPopupMenu popMenu3 = new JPopupMenu();
JPopupMenu popMenu4 = new JPopupMenu();
JPopupMenu popMenu5 = new JPopupMenu();
private Object zawodnik;
String nazwisko;
/** Creates new form ZawodnikBean */
public ZawodnikBean() {
initComponents();
popMenu1.add("punktowy").addActionListener(al);
popMenu1.addSeparator();
popMenu1.add("autowy").addActionListener(al);
popMenu1.addSeparator();
popMenu1.add("blok-aut").addActionListener(al);
popMenu1.addSeparator();
popMenu1.add("w siatke").addActionListener(al);
Atak.add(popMenu1);
JMenu pojedynczy = new JMenu("pojedyńczy");
pojedynczy.add("punktowy");
pojedynczy.addSeparator();
pojedynczy.add("autowy");
pojedynczy.addSeparator();
pojedynczy.add("wyblok");
pojedynczy.addActionListener(al);
popMenu2.add(pojedynczy);
popMenu2.addSeparator();
JMenu podwojny = new JMenu("podwójny");
podwojny.add("punktowy");
podwojny.addSeparator();
podwojny.add("autowy");
podwojny.addSeparator();
podwojny.add("wyblok");
podwojny.addActionListener(al);
popMenu2.add(podwojny);
popMenu2.addSeparator();
JMenu potrojny = new JMenu("potrójny");
potrojny.add("punktowy");
potrojny.addSeparator();
potrojny.add("autowy");
potrojny.addSeparator();
potrojny.add("wyblok");
potrojny.addActionListener(al);
popMenu2.add(potrojny);
Blok.add(popMenu2);
popMenu3.add("ass serwisowy");
popMenu3.addSeparator();
popMenu3.add("autowa");
popMenu3.addSeparator();
popMenu3.add("w siatke");
popMenu3.addSeparator();
popMenu3.add("punktowa");
Zagrywka.add(popMenu3);
popMenu4.add("błąd");
popMenu4.addSeparator();
popMenu4.add("perfekcyjne");
popMenu4.addSeparator();
popMenu4.add("dobre");
Przyjecie.add(popMenu4);
popMenu5.add("dobra");
popMenu5.addSeparator();
popMenu5.add("zła (błąd obrony)");
Obrona.add(popMenu5);
}
private void AtakMousePressed(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
if ((evt.getButton()==MouseEvent.BUTTON1)||(evt.getButton()==MouseEvent.BUTTON3)){
popMenu1.show(Atak, Atak.getWidth(), Atak.getHeight());
}
}
private void BlokMousePressed(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
if ((evt.getButton()==MouseEvent.BUTTON1)||(evt.getButton()==MouseEvent.BUTTON3)){
popMenu2.show(Blok, Blok.getWidth(), Blok.getHeight());
}
}
private void ZagrywkaMousePressed(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
if ((evt.getButton()==MouseEvent.BUTTON1)||(evt.getButton()==MouseEvent.BUTTON3)){
popMenu3.show(Zagrywka, Zagrywka.getWidth(), Zagrywka.getHeight());
}
}
private void PrzyjecieMousePressed(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
if ((evt.getButton()==MouseEvent.BUTTON1)||(evt.getButton()==MouseEvent.BUTTON3)){
popMenu4.show(Przyjecie, Przyjecie.getWidth(), Przyjecie.getHeight());
}
}
private void ObronaMousePressed(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
if ((evt.getButton()==MouseEvent.BUTTON1)||(evt.getButton()==MouseEvent.BUTTON3)){
popMenu5.show(Obrona, Obrona.getWidth(), Obrona.getHeight());
}
}
public String getNazwisko (){
return this.nazwisko;
}
public void setNazwisko (String nazwisko){
this.nazwisko = nazwisko;
nazwisko_zawodnika.setText(nazwisko);
}
private ActionListener al = new ActionListener(){
public void actionPerformed(ActionEvent e) {
if(e.getSource() == popMenu1){
System.out.print("Sprawdzamy czy działa wybieranie z popup\n");
System.out.print("Item 1, powinien być atak autowy!!\n");
} else if(e.getSource() == popMenu2){
System.out.print("Sprawdzamy czy działa wybieranie z popup\n");
System.out.print("Item 2\n" + e.toString() + "\n");
}
}
};
}