题
我使用以下代码使用自定义的JToolbar:
public class GeneralToolbar extends JToolBar{
public GeneralToolbar() {
super();
setBackground(Color.white);
setOpaque(true);
setPreferredSize(new Dimension(54,54));
setMinimumSize(new Dimension(54,54));
setMaximumSize(new Dimension(54,54));
setSize(new Dimension(54,54));
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
Dimension size = this.getSize();
ImageIcon image = DefaultAction.createImageIcon("/com/aaa/resources/tabback");
g.drawImage(image.getImage(), 0,0, size.width, size.height, this);
}
}
现在可以看到图像。但是我在按钮周围得到了一个不透明的矩形。我试图将按钮不透明设置为false,但没有增加任何影响。谢谢你的支持
解决方案
也许您需要使用:
button.setBorderPainted( false );
button.setContentAreaFilled( false );
当然,当您摆脱边框时,您不会看到单击按钮的效果。
如果您需要更多帮助,请发布 SSCCE 显示问题。
其他提示
public GeneralToolbar() {
super();
setBackground(Color.white);
setOpaque(true);
setPreferredSize(new Dimension(54,54));
setMinimumSize(new Dimension(54,54));
setMaximumSize(new Dimension(54,54));
setSize(new Dimension(54,54));
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
Dimension size = this.getSize();
ImageIcon image = DefaultAction.createImageIcon("/com/aaa/resources/tabback");
g.drawImage(image.getImage(), 0,0, size.width, size.height, this);
}
不隶属于 StackOverflow