Popmenu bliver ikke vist på min JTable
Jeg har lidt problemer med visning af min popupmenu. Den bliver skabt fint nok, men bliver bare ikke vist ved højreklik på min JTableDe tre klasser jeg har til formålet bliver vist her:
public class ContextMenu extends JPopupMenu {
public ContextMenu() {}
public void addActionMap(ActionMap map){
if(map.size() != 0){
this.addSeparator();
}
Object[] temparr = map.keys();
for(int i = 0; i < map.size(); i++){
this.add(new JMenuItem(temparr[i].toString()));
}
}
}
---------------------------------------------------------------------------------
public class NumberActionMap extends OrderedActionMap {
private static NumberActionMap map = null;
private static ArrayList array = null;
private static String phonenumber = "";
public NumberActionMap(){
Action search = new AbstractAction(){
public void actionPerformed(ActionEvent e){
GUI.getGUI().getDesign().getTree().setSearchNumber(phonenumber);
}
};
put("Vis historik", search);
Action sendMulti = new AbstractAction(){
public void actionPerformed(ActionEvent e){
}
};
put("Send multibesked", sendMulti);
Action sendSingle = new AbstractAction(){
public void actionPerformed(ActionEvent e){
}
};
put("Send besked", sendSingle);
Action showdetail = new AbstractAction(){
public void actionPerformed(ActionEvent e){
}
};
put("Vis detaljer/tilføj til arkiv", showdetail);
//tilføj til array fra OrderedActionMap klassen
order.add("Vis historik");
order.add("Send multibesked");
order.add("Send besked");
order.add("Vis detaljer/tilføj til arkiv");
}
public void setNumber(String number){
NumberActionMap.phonenumber = number;
}
}
---------------------------------------------------------------------------------
public class CustomerTable extends JTable {
private JTable table = null;
public CustomerTable(TableModel tm){
super(tm);
table = this;
final ContextMenu popupmenu = new ContextMenu();
NumberActionMap map = new NumberActionMap();
popupmenu.addActionMap(map);
//tilføj mouselistener
addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getButton() == MouseEvent.BUTTON3){
int row = getSelectedRow();
int col = getSelectedColumn();
if(col >= 0 && row >= 0){
String nr = table.getValueAt(row, 0).toString();
}
// Vis context menu
System.out.println("Vis context-menu");
popupmenu.show();
}
}
});
}
}
---------------------------------------------------------------------------------
Håber der er nogen der kan gennemskue hvad der går galt/jeg gør galt.
