我正在尝试在合成XML文件中设置JLabel的图标,但它不显示。我试图同时设置defaultIcon和icon属性,但似乎都没有。我是否应该在这里使用JLabel以外的其他东西?这是我的代码:

 <style id="dayBgLabelStyle">
     <imageIcon id="bg" path="images/WG_selectionFields-2.png"/>
     <property key="defaultIcon" value="bg"/>
     <property key="icon" value="bg"/>
 </style>

 <bind style="dayBgLabelStyle" type="name" key="dayBgLabel"/>

JLabel dayBgLabel = new JLabel();
dayBgLabel.setName("dayBgLabel");
dayBgLabel.setIcon(createImageIcon("images/selectionFields-2.png"));

protected static ImageIcon createImageIcon(String path) {
    java.net.URL imgURL = testClass.class.getResource(path);
    if (imgURL != null)
        return new ImageIcon(imgURL);
    else
        return null;
}

最佳答案

我知道这很晚了,但也许对其他人有帮助。

我设法通过使用添加图像

<imagePainter path="images/WG_selectionFields-2.png"" sourceInsets="1 1 5 5" />

而不是使用imageIcon。我希望这有帮助!

10-08 16:28