【发布时间】:2010-05-24 03:28:20
【问题描述】:
我有一个JTree,我为它提供了实现TreeNode 接口的对象,以及一个自定义TreeModel 来显示它们(不使用DefaultMutableTreeNode)。我想更改某些节点的文本颜色。我在文档中找不到任何东西,除了javax.swing.tree.DefaultTreeCellRenderer.setTextNonSelectionColor(Color newColor),但它会不加选择地改变一切,我只需要一些节点(特别是断开的链接,即在磁盘上找不到相应文件的节点,应该是灰色的,其余的应该是默认的)。能做到吗,怎么做?
【问题讨论】:
-
另见
TreeIconDemo2如何使用树 java.sun.com/docs/books/tutorial/uiswing/components/tree.html -
噢!谢谢! “因为
DefaultTreeCellRenderer是JLabel的子类,所以您可以使用任何JLabel方法——例如setIcon——来自定义DefaultTreeCellRenderer。”非常感谢你和@Justin。