Popupmenü in FileTable?

Status
Nicht offen für weitere Antworten.
du musst einen mouselistener an die tabelle hängen, dann mit setRowSelectionInterval() und rowAtPoint() die aktuelle zeile markieren. udn dein popup up poppen.
oder haste ne konkrete frage?
 
Code:
public class FileTable extends JTable {

  .......

  public FileTable() {
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  private void jbInit() throws Exception {
    .........
    this.addMouseListener(new MyMouseListener(this));
  }
  




}

class MyMouseListener extends MouseAdapter {
    FileTable adaptee;

    MyMouseListener(FileTable adaptee) {
      this.adaptee = adaptee;
    }

    public void mouseReleased(MouseEvent e){
         int selected = adaptee.rowAtPoint(e.getPoint());
         //row = selected;
         adaptee.getSelectionModel().setSelectionInterval(selected, selected);
        if(e.isPopupTrigger()){
                if(!adaptee.jPopupMenu1.isVisible()){
                    adaptee.jPopupMenu1.show(adaptee, e.getX(), e.getY());
                }
                else{
                     adaptee.jPopupMenu1.setVisible(false);
                }
          }

     }

 }

es zeigt sich bei Klick auf die Maustaste keine Reaktion ...
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben