我需要为我的JTree使用自定义单元格渲染器在每个单元格上添加一些JLabel.然后允许用户单击这些标签,而无需先选择单元格.
所以,我创建了一个Renderer,它返回一个包含DefaultTreeCellRenderer和2个JLabel的JPanel.
public class TreeNodeRenderer extends DefaultTreeCellRenderer implements TreeCellRenderer
{
private JPanel panel1 = new JPanel();
private JLabel delete = new JLabel("");
private JLabel upload = new JLabel("");
public Component getTreeCellRendererComponent(JTree tree,
Object value,
boolean selected, boolean expanded, boolean leaf, int row,
boolean hasFocus)
{
//
// DELETE label
//
delete.setName("delete");
delete.setIcon(new ImageIcon("Data/trash.png"));
//
// UPLOAD label
//
upload.setName("upload");
upload.setIcon(new ImageIcon("Data/app_up.png"));
DefaultTreeCellRenderer defaultRenderer = new DefaultTreeCellRenderer();
Color backgroundSelectionColor = defaultRenderer.getBackgroundSelectionColor();
Color backgroundNonSelectionColor = defaultRenderer.getBackgroundNonSelectionColor();
if(selected)
panel1.setBackground(backgroundSelectionColor);
else
panel1.setBackground(backgroundNonSelectionColor);
component = …Run Code Online (Sandbox Code Playgroud) 我正在创建一个Outlook加载项,我想知道如何从选定的日历中获取元素?例如,我需要从名为"myCalendar"的日历中获取所有约会项目.现在,我可以从所有日历中获取所有约会项目.
谢谢,