[Java lista] JTree kiválasztás (Swing)

istvan.ketler at lhsystems.com istvan.ketler at lhsystems.com
2006. Nov. 29., Sze, 17:57:54 CET


Hát, a JTree bizonyos értelemben elég buta. Szerintem először keresd meg a node-ot, majd kérd el tőle a path-t, és utána már megkérheted a JTree-t, hogy ugyan legyen már szíves ráállni.

Ha megvan a node és a tree:

TreePath path = new TreePath(node.getPath());

tree.expandPath(path);  // expand the path in case if it was collapsed

tree.setSelectionPath(path);

tree.scrollPathToVisible(path);  // ensure that the selected path is visible

Nagyjából ennyi. (Egy korábbi kódomból szedtem elő, szóval nekem már működött).

Üdvözlettel,

Iván

> -----Original Message-----
> From: javalist-bounces at javagrund.hu 
> [mailto:javalist-bounces at javagrund.hu] On Behalf Of Szoboszlai Péter
> Sent: Wednesday, November 29, 2006 5:35 PM
> To: Java Forum (JavaGrund)
> Subject: [Java lista] JTree kiválasztás (Swing)
> 
> Sziasztok!
> 
> Van egy JTree-m, Stringek vannak benne. Hogyan tudok 
> programból kiválasztani egy általam megadott elemet? 
> Próbálkoztam TreePath-szal + a setSelectionPath() metódussal, 
> de meg se mozdul a fa. A setSelectionRow metódus hatására 
> működik, de az nekem nem jó. Konkrét útvonalat kell megnyitnom. 
> 
> TreePath-t így hozok létre: 
> 
> TreePath path = new TreePath(new Object[] { new 
> DefaultMutableTreeNode("elemnév1"), new 
> DefaultMutableTreeNode("elemnévn") });
> 
> tree.setSelectionPath(path); 
> 
> Van 1 olyan érzésem, h ezt nem így kéne csinálni :/
> 
> Előre is köszi!
> 
> --
> Szoboszlai Péter
> 
> {szoboszlai.peter at gmail.com | pszoboszlai at eu.infobal.com 
> <mailto:pszoboszlai at eu.infobal.com> } 
> 


További információk a(z) Javalist levelezőlistáról