我使用 btn.setIcon
将图像放置在 JButton 上问题是文本被图像推到右边,我可以看到背景按钮颜色,并且只有文本的第一个字母,即使它们的水平对齐都放在中心(我尝试了所有变体)。
注意:我需要的是完整的背景图像,图像上方有文本。而不仅仅是图标。
我怎样才能做到这一点?
如果您发布代码作为工作示例,我们将能够提供更多帮助。 – 用户2891133
就是这样:
public void placeResizedImage(JBUtton btn){
URL buttonImage=this.getClass().getResource("/source/woodButton.png");
BufferedImage bg=null;
try {
bg = ImageIO.read(buttonImage);
} catch (IOException e) {
System.out.println("Background image does not exist!");
return null;
}
Image imageBuff=bg.getScaledInstance((int)btn.getSize().getWidth(),(int) btn.getSize().getHeight(),
Image.SCALE_SMOOTH);
btn.setIcon(new ImageIcon(imageBuff));
}
最佳答案
JButton button = new JButton( "Centered" );
button.setIcon( new ImageIcon("mong.jpg") );
button.setHorizontalTextPosition(JButton.CENTER);
button.setVerticalTextPosition(JButton.CENTER);
关于java - JButton背景图像文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30383533/