我有一个程序可以检测某些机器何时在线并创建一个带有绿色"在线"图标的按钮来显示这一点.我想添加功能以定期检查此机器是否仍在线,如果不是,请将图标更改为我已定义的"离线"图标.
我有一个简单的TreeCellRenderer,它从节点中提取JButton,并将其输出到JTree.
public class ButtonCellRenderer extends JButton implements TreeCellRenderer {
@Override
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
//setBackgroundNonSelectionColor(tree.getBackground());
ProgressButton b = null;
if ((value != null) && (value instanceof DefaultMutableTreeNode)) {
Object userObject = ((DefaultMutableTreeNode) value).getUserObject();
if (userObject instanceof ProgressButton) {
b = (ProgressButton) userObject;
return b;
}
}
if (b == null) {
System.out.println("Null!");
DefaultTreeCellRenderer defaultRenderer = new DefaultTreeCellRenderer();
return defaultRenderer.getTreeCellRendererComponent(tree,
value, selected, expanded, leaf, row, hasFocus);
} else …Run Code Online (Sandbox Code Playgroud)