- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我为 JTree 文件编写了一个树渲染器,它可以在第一次创建树时设置背景颜色,但它不会突出显示选择。
private class CustomTreeCellRenderer extends DefaultTreeCellRenderer{
@Override
public Component getTreeCellRendererComponent(JTree tree, Object value,boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus){
if(value instanceof DefaultMutableTreeNode){
setText(FileSystemView.getFileSystemView().getSystemDisplayName((File) ((DefaultMutableTreeNode) value).getUserObject()));
setIcon(FileSystemView.getFileSystemView().getSystemIcon((File) ((DefaultMutableTreeNode) value).getUserObject()));
}
super.setBackgroundSelectionColor(Color.BLUE);
if(selected){
super.setBackground(Color.gray);
setForeground(getTextSelectionColor());
}else{
super.setBackground(Color.CYAN);
setForeground(getTextNonSelectionColor());
}
this.setOpaque(true);
return this;
}
}
添加
super.getTreeCellRendererComponent
解决了问题。
最佳答案
在 getTreeCellRendererComponent 内部,第一次调用应该是
super.getTreeCellRendererComponent(arguments);
关于java - JTree TreeCellRenderer 不突出显示选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42869520/
我得到了一个带有自定义 TreeCellRenderer 的 JTree。 该渲染器是一个包含复选框和标签的面板。 虽然每个节点的标签文本都是固定的(在 DefaultMutableTreeNode
我一直在研究 JTree 和 TreeCellRenderer。一般来说,应用程序(具有一棵 JTree)似乎只有一个 TreeCellRenderer 实例。应用程序多次调用 TreeCellRen
我为 JTree 文件编写了一个树渲染器,它可以在第一次创建树时设置背景颜色,但它不会突出显示选择。 private class CustomTreeCellRenderer extends Defa
简而言之,我希望渲染树以使第一层为粗体。 public class TreeRenderer1 extends DefaultTreeCellRenderer { @Override public C
我有一个简单的 TreeCellRenderer,它从节点中提取 JButton,并将其输出到 JTree。 public class ButtonCellRenderer extends JButt
我正在使用下面这段代码: class CountryTreeCellRenderer implements TreeCellRenderer { private JLabel lab
如何让我的树单元填充我的 JTree 的宽度: JTree tree = new JTree(); tree.setCellRenderer(new TreeCellRenderer() {
我编写了自定义 TreeCellRenderer 以更改组件外观。一切正常,除了 setBackground 没有效果。由于前景颜色始终正确更改,因此代码肯定会执行。由于选中的项目呈现为蓝色,取消选中
有人知道如何修改 javax.swing.TreeCellRenderer 才能描边单元格中的文本吗? 最佳答案 如果您想在某些列中描边文本,您应该使用渲染器。如果所有单元格都需要这种字体,只需修改表
我有一个派生自具有自定义 TreeCellRenderer 的 JTree 的类。我已经在该树中实现了拖放操作,因此用户可以重新排列树节点。 放置模式为 DropMode.ON_OR_INSERT,因
我是一名优秀的程序员,十分优秀!