树状列表一般都是动态生成的(java后台实现枯行宽),所以java只负责发送这些html代没亮码,而页面控制就要交给前端带源的js来控制
所以要设置列表默认展开,只要把该区域的div设置为非隐藏即可
也可以使用js的一些类库来实现树状列表
import java.util.ArrayList;
import javax.swing.JFrame;
import javax.swing.JTree;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.tree.DefaultMutableTreeNode;
public class JTreeList {
public JTreeList() {
DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("软件部");// 自定义根节点
ArrayList
list.add("小吉");
list.add("小宏");
list.add("小伟");
DefaultMutableTreeNode leafTreeNode;
for (String x : list) {
leafTreeNode = new DefaultMutableTreeNode(x);
rootNode.add(leafTreeNode);
}
final JTree tree = new JTree(rootNode);// 面板中的树
JFrame f = new JFrame("JTreeDemo");
f.add(tree);
f.setSize(300, 300);
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 添加选择事件
tree.addTreeSelectionListener(new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent e) {
DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree
.getLastSelectedPathComponent();
if (node == null)
return;
Object object = node.getUserObject();
if (node.isLeaf()) {
String user = (String) object;
System.out.println("你选择了:" + user.toString());
}
}
});
}
}
看帮助就行了桥轮
setExpandedStateprotected void setExpandedState(TreePath path,
boolean state)设置此 JTree 的展开状态。如果 state 为 true,则
path 的所有父路径和路径都被敏缺信标记为展开。如果 state 为 false,则
path 的所有父路径被标记为展开,但是 path 本身被标记为扮茄折叠。
如果 TreeWillExpandListener 禁止它,则会失败。
这是用什么实现的
这个就要看你用的第三方插件是哪个了,用哪个就去找哪个的悔坦api
如果是自辩枝己写的树,就找携前敏写树那个人
当然,如果是你自己写的。。。估计也不太可能
自己写的不可能不知道怎么展开。好吧去问写树那个人吧