如何让JTree初始化的时候全部展开,并且让某个指定的叶子用不同的颜色表示出来? 全部展开很简单,初始化完后extendeall就可以了。不同的节点用不同的颜色,你只好自己编一个类了,不过也不复杂,我做过类似的。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import javax.swing.*;import javax.swing.tree.*;public class MyTreeCellRenderer extends DefaultTreeCellRenderer { public Component getTreeCellRendererComponent( JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) { super.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus); if(条件){ setForeground(Color.blue); } }} 是 JTree tree;tree.extendall 吗???? 类似这样:tree.expandPath(new TreePath(TreeModel.getPathToRoot(node))); tree.expandPath(ThreePath)和tree.expandRow(int)只能展开最近一层的节点。并不能展开更深层次的节点。也就是说不能这两个函数本身不能实现全部展开的功能。我写了个比较笨的办法,但确实管用,我自己现在也这么用的: // 把树全部展开 private void treeExpandAll(JTree tree, int c) { for(int i=0;i<c;i++) { tree.expandRow(i); } } //其中c为树的节点个数 用JAVA把CSV文件导入SQL2005 jar包资源文件 tomcat新手问题 开发一个加减乘除四则运算器 SWING高手求救,关于jframe的问题 Applet问题,特别简单(这两句有什么不同) 帮忙看看代码,关于表格的. 关于了解面试者JAVA水平的问题 数据库关闭异常 为什么java的继承,在方法和成员变量两边表现不一样呢 我想从另外一个VC写的程序向JAVA程序发消息,让JAVA弹出一个JInternalFrame来,JAVA应该怎么接受消息呢?我该怎么做? 请问在jcreator中怎么把默认字体设大啊?还有一个关于抽象类的问题
import javax.swing.tree.*;
public class MyTreeCellRenderer extends DefaultTreeCellRenderer {
public Component getTreeCellRendererComponent(
JTree tree,
Object value,
boolean selected,
boolean expanded,
boolean leaf,
int row,
boolean hasFocus) {
super.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus);
if(条件){
setForeground(Color.blue);
}
}
}
我写了个比较笨的办法,但确实管用,我自己现在也这么用的:
// 把树全部展开
private void treeExpandAll(JTree tree, int c) {
for(int i=0;i<c;i++) {
tree.expandRow(i);
}
}
//其中c为树的节点个数