JTree mit Rechtsklick markieren

Status
Nicht offen für weitere Antworten.

MScalli

Bekanntes Mitglied
weiss jemand wie ich einen Eintrag in einem JTree mit Rechtsklick markieren kann??
wenn ich den Eintrag links markiere und nen rechtsklick machen bekomme
ich schon den selektierten Pfad, aber wie mache ich es das ich NUR die rechte Maustaste benutzte??

wo sich der Eintrag befindet weiss ich ja mit getRowForLocation..

Im netz hab ich gelesen das es mit getPathForLocation gehen soll und dann
setSelectionPath.. bekomme ich aber so nicht hin!!!

Code:
    private void showPopup(MouseEvent e) {
        if (e.isPopupTrigger()) {
            popupmenu.show(e.getComponent(), e.getX(), e.getY());
            System.out.println("**** Rechtsklick ****"); 
            System.out.println(m_tree.getSelectionPath());

            
            int selRow = m_tree.getRowForLocation(e.getX(), e.getY());
            TreePath selPath = m_tree.getPathForLocation(e.getX(), e.getY());    
        }
    }

Code:
        // MouseListener für Tree
        m_tree.addMouseListener(new MouseAdapter(){
            public void mouseReleased(MouseEvent e) {
                showPopup(e);
            }  
        });


kann mir wer helfen bitte ??
 

PollerJava

Top Contributor
Code:
 public void mousePressed(MouseEvent e) {                                                               
                    if (e.getModifiers() == 4) {  // rechte MT, auf Windows z.B
...
}
 

MScalli

Bekanntes Mitglied
????

sorry aber weiss gerade nicht was du mit diesem code meinst?!?!?

also bei nem JTable z.B. hole ich mir die ausgewählte zeile so

Code:
            // hole Koordinaten Zeile
            int column = table.columnAtPoint(e.getPoint());
            int row = table.rowAtPoint(e.getPoint());
            
            // markiert die Zeile 
            table.changeSelection(row, column, false, false);

jetzt kann ich mir den Eintrag holen mit

table.getSelectedRow(table.getSelectedRow(), table.getSelectedColumn());


d.h. ich selektiere die Zeile bei der ich stehe und kann mir dann leicht den Inhalt holen.

wenn das irgendwie mit dieser Codezeile möglich ist bitte ich um ne kurze erklärung :)
 
B

Beni

Gast
@PollerJava
PollerJava hat gesagt.:
Code:
 public void mousePressed(MouseEvent e) {                                                               
                    if (e.getModifiers() == 4) {  // rechte MT, auf Windows z.B
...
}
Nie nie nie direkt eine "magische Zahl" angeben, wenn schon müsste da "MouseEvent.BUTTON3" stehen. Aber da hier der Rechtsklick wohl für ein Popup-Menü verwendet wird, ist "isPopupTrigger" schon die beste Lösung.

@MScalli
Viel fehlt nicht mehr, nur noch zwei Zeilen:
Code:
    private void showPopup(MouseEvent e) {
        if (e.isPopupTrigger()) {
            popupmenu.show(e.getComponent(), e.getX(), e.getY());
            System.out.println("**** Rechtsklick ****");
            System.out.println(m_tree.getSelectionPath());

           
            int selRow = m_tree.getRowForLocation(e.getX(), e.getY());
            TreePath selPath = m_tree.getPathForLocation(e.getX(), e.getY());   
            if( selPath != null )
                        m_tree.setSelectionPath( setPath );
        }
    }
 

MScalli

Bekanntes Mitglied
perfekt.

vielen dank für eure hilfe.

@beni
Ich dachte eigentlich das ich das schon ausprobiert habe..
na habe ich wohl doch nicht^^ denn so gehts einwandfrei ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E JTree - Selektieren mit Rechtsklick Allgemeine Java-Themen 15
Bananabert Swing jtree : image als user object Allgemeine Java-Themen 2
F JTree: Nodes dynamisch anlegen via LinkedHashMap Allgemeine Java-Themen 2
E Swing Jtree Allgemeine Java-Themen 9
R JTree - Mehrere Roots Allgemeine Java-Themen 6
DStrohma Icons in JTree Nodes weiter nach rechts rücken Allgemeine Java-Themen 2
M JTree aktualisieren nach Mausklick Allgemeine Java-Themen 12
DStrohma Jede node in JTree mit eigenem Icon Allgemeine Java-Themen 7
Benji0815 Verzeichnis wie im Windows Explorer in einem JTree anzeigen Allgemeine Java-Themen 6
S JAVA JTree rekursiv umschreiben Allgemeine Java-Themen 5
S Suche im JTree nach Neuaufbau Allgemeine Java-Themen 4
N JTree nicht genutzte Pfade schließen Allgemeine Java-Themen 2
G JTree Node löschen Allgemeine Java-Themen 2
G JTree Node verschieben Allgemeine Java-Themen 2
MQue leerer JTree Allgemeine Java-Themen 6
MQue JTree Allgemeine Java-Themen 6
MQue JCheckBox in JTree Allgemeine Java-Themen 2
F JTree in Jsp Allgemeine Java-Themen 2
T Äquivalent zu JTree Allgemeine Java-Themen 4
C JTree: ActionListener auf die Nodes Allgemeine Java-Themen 3
C JTree: Nodes automatisch öffnen Allgemeine Java-Themen 2
P JTree/ Nodes einfügen Allgemeine Java-Themen 2
P JTree Allgemeine Java-Themen 6
P aus JTree eine XML- Datei Allgemeine Java-Themen 6
P Vector auf JTree Allgemeine Java-Themen 6
P JTree Farbe Allgemeine Java-Themen 14
S JTree selektion erkennen und drauf reagieren Allgemeine Java-Themen 2
E JTree (schonwieder) - TreeCellEditor Allgemeine Java-Themen 9
E JTree - einzelnes Element (Knoten) editieren Allgemeine Java-Themen 2
P JTree ID vergeben Allgemeine Java-Themen 3
P JTree Allgemeine Java-Themen 4
P JTree/ JTabbedPane Allgemeine Java-Themen 34
L JTree Allgemeine Java-Themen 23
E root JTree Allgemeine Java-Themen 2
E Child in JTree hinzufügen Allgemeine Java-Themen 4
E JTree in NetBeans Allgemeine Java-Themen 2
R Objekt an Knoten von JTree anhaengen Allgemeine Java-Themen 2
R Daten aus Baum entsprechend in jTree einfuegen Allgemeine Java-Themen 2
T Jtree zu langsam beim klappen Allgemeine Java-Themen 8
S JTree - Brett vor'm Kopp Allgemeine Java-Themen 19
G Baumhierarchie in JTree eintragen Allgemeine Java-Themen 4
K JTree - Knoten expandieren Allgemeine Java-Themen 4
K JTree Inhalt löschen und Anzeige aktualisieren Allgemeine Java-Themen 13
G JTree automatisch sortieren lassen Allgemeine Java-Themen 5
Luma Diskettenlaufwerk rattert los bei Eintrag in JTree Allgemeine Java-Themen 6
G in Jtree suchen Allgemeine Java-Themen 2
K JTree plus eigener FileLoader Allgemeine Java-Themen 2
H Wie stellt ein JTree fest, wo etwas eingehängt werden soll? Allgemeine Java-Themen 2
Z MouseClicked -> Rechtsklick Allgemeine Java-Themen 15
S [WinXP] .java mit Rechtsklick ausführen? Allgemeine Java-Themen 2
P java application in das rechtsklick menü im explorer adden? Allgemeine Java-Themen 21
S Zwei String vergleichen, Fehler markieren Allgemeine Java-Themen 3
C ActionListener - ToggleButton als von KI geklickt "markieren" Allgemeine Java-Themen 2
M Kalender : Änderungstage markieren Allgemeine Java-Themen 5
Jats Zeichenkette markieren Allgemeine Java-Themen 7
C kann nicht mehr markieren ->TreeCellRenderer Allgemeine Java-Themen 6
the[V]oid Primitive Datentypen Wrappen und als primitiv markieren? Allgemeine Java-Themen 7
N Tabellenzelle markieren Allgemeine Java-Themen 3
G gesamten text eines textareas markieren Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben