如何在 Java 中自動調整 JTree 的大小
要在 Java 中自動調整 JTree 的大小,請使用 setVisibleRowCount() 方法。首先,在樹中建立一個節點 -
DefaultMutableTreeNode node = new DefaultMutableTreeNode("Project");
現在,向上面建立的節點新增節點 -
DefaultMutableTreeNode node1 = new DefaultMutableTreeNode("App"); DefaultMutableTreeNode node2 = new DefaultMutableTreeNode("Website"); DefaultMutableTreeNode node3 = new DefaultMutableTreeNode("WebApp"); node.add(node1); node.add(node2); node.add(node3);
現在,建立更多節點,並將它們設定為我們上面建立的節點的子節點 -
DefaultMutableTreeNode one = new DefaultMutableTreeNode("Learning website"); DefaultMutableTreeNode two = new DefaultMutableTreeNode("Business website"); DefaultMutableTreeNode three = new DefaultMutableTreeNode("News publishing website"); DefaultMutableTreeNode four = new DefaultMutableTreeNode("Android app"); DefaultMutableTreeNode five = new DefaultMutableTreeNode("iOS app"); DefaultMutableTreeNode six = new DefaultMutableTreeNode("Editor WebApp"); node1.add(one); node1.add(two); node1.add(three); node2.add(four); node2.add(five); node3.add(six);
現在,建立一個 JTree 並設定其中的根節點 -
JTree tree = new JTree(node);
以下內容將顯示捲軸,並且僅允許 8 行可見 -
tree.setVisibleRowCount(8); JOptionPane.showMessageDialog(null, new JScrollPane(tree));
以下是如何自動調整 JTree 大小的示例 -
示例
package my; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JScrollPane; 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("Project"); DefaultMutableTreeNode node1 = new DefaultMutableTreeNode("App"); DefaultMutableTreeNode node2 = new DefaultMutableTreeNode("Website"); DefaultMutableTreeNode node3 = new DefaultMutableTreeNode("WebApp"); node.add(node1); node.add(node2); node.add(node3); DefaultMutableTreeNode one = new DefaultMutableTreeNode("Learning website"); DefaultMutableTreeNode two = new DefaultMutableTreeNode("Business website"); DefaultMutableTreeNode three = new DefaultMutableTreeNode("News publishing website"); DefaultMutableTreeNode four = new DefaultMutableTreeNode("Android app"); DefaultMutableTreeNode five = new DefaultMutableTreeNode("iOS app"); DefaultMutableTreeNode six = new DefaultMutableTreeNode("Editor WebApp"); node1.add(one); node1.add(two); node1.add(three); node2.add(four); node2.add(five); node3.add(six); JTree tree = new JTree(node); frame.add(tree); tree.setVisibleRowCount(8); JOptionPane.showMessageDialog(null, new JScrollPane(tree)); } }
輸出
現在,如果單擊每個節點,則會出現子節點。在擴充套件可見行數後,會出現一個捲軸來調整 TREE 的大小 -
廣告