如何使用 Java 在 JTree 中獲取此節點的最後一個子節點?


假設我們希望獲取節點的最後一個子節點,那麼可以使用 getLastChild() 方法 -

node3.getFirstChild()

在控制檯中顯示節點的最後一個子節點 -

System.out.println("The last child of node 3 = "+node3.getLastChild());

以下是一個在 JTree 中獲取此節點的最後一個子節點的示例 -

示例

package my;
import javax.swing.JFrame;
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
public class SwingDemo {
   public static void main(String[] args) throws Exception {
      JFrame frame = new JFrame("Demo");
      DefaultMutableTreeNode node = new DefaultMutableTreeNode("Products");
      DefaultMutableTreeNode node1 = new DefaultMutableTreeNode("Clothing (Product1 - P66778)");
      DefaultMutableTreeNode node2 = new DefaultMutableTreeNode("Accessories (Product2 - P66779)");
      DefaultMutableTreeNode node3 = new DefaultMutableTreeNode("Home Decor (Product3 - P66780)");
      DefaultMutableTreeNode node4 = new DefaultMutableTreeNode("Electronics (Product4 - P66781)");
      node.add(node1);
      node.add(node2);
      node.add(node3);
      node.add(node4);
      DefaultMutableTreeNode one = new DefaultMutableTreeNode("Shirt");
      DefaultMutableTreeNode two = new DefaultMutableTreeNode("T-shirt");
      DefaultMutableTreeNode three = new DefaultMutableTreeNode("Hoodie");
      DefaultMutableTreeNode four = new DefaultMutableTreeNode("Sunglasses");
      DefaultMutableTreeNode five = new DefaultMutableTreeNode("Frames");
      DefaultMutableTreeNode six = new DefaultMutableTreeNode("Belts");
      DefaultMutableTreeNode seven = new DefaultMutableTreeNode("Showpieces & Figurines");
      DefaultMutableTreeNode eight = new DefaultMutableTreeNode("Clocks");
      DefaultMutableTreeNode nine = new DefaultMutableTreeNode("Wall Shelves");
      DefaultMutableTreeNode ten = new DefaultMutableTreeNode("Mobile Accessories");
      DefaultMutableTreeNode eleven = new DefaultMutableTreeNode("Smart Wearable Tech");
      DefaultMutableTreeNode twelve = new DefaultMutableTreeNode("Health Care Applicances");
      DefaultMutableTreeNode thirteen = new DefaultMutableTreeNode("Smart Home Automation");
      node1.add(one);
      node1.add(two);
      node1.add(three);
      node2.add(four);
      node2.add(five);
      node2.add(six);
      node3.add(seven);
      node3.add(eight);
      node3.add(nine);
      node4.add(ten);
      node4.add(eleven);
      node4.add(twelve);
      node4.add(thirteen);
      JTree tree = new JTree(node);
      for (int i = 0; i < tree.getRowCount(); i++) {
         tree.expandRow(i);
      }
      tree.putClientProperty("JTree.lineStyle", "Angled");
      System.out.println("Node 3 = "+node.getChildAt(2));
      System.out.println("The last child of node 3 = "+node3.getLastChild());
      tree.setRowHeight(25);
      frame.add(tree);
      frame.setSize(600,450);
      frame.setVisible(true);
   }
}

輸出如下所示,顯示控制檯中此節點的最後一個子節點 -

輸出

以下為我們的 JTree -

更新時間: 2019 年 7 月 30 日

222 次瀏覽

啟動您的 職業

完成後獲得認證的課程

開始使用
廣告
© . All rights reserved.