JButton中怎么可以让文本覆盖在图片的上面!

esefei 2007-06-13 11:02:12
通过JButton(文本,图片),但是他们两个是平行排列的,但是我想要文本覆盖在图片的正上方,而且我要调用文本的值,所以不能把他们两个做成一个图片,不知道怎么解决哦!麻烦大家帮帮忙!
...全文
406 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
boby 2007-06-13
  • 打赏
  • 举报
回复
简单写了一个,供你参考,构造函数里面参数是button里面的文本和图片的路径,你可以试试


import java.awt.Color;
import java.awt.Graphics;
import java.awt.Dimension;
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JButton;

public class MyButton extends JButton{

private String buttonText;
private Image img = null;
private int picWidth;
private int picHeight;

public MyButton(String buttonText, String picFileName) {
this.buttonText = buttonText;
ImageIcon imageIcon = new ImageIcon(getClass().getResource(picFileName));
img = imageIcon.getImage();
picWidth = imageIcon.getIconWidth();
picHeight = imageIcon.getIconHeight();
this.setPreferredSize(new Dimension(picWidth+40, picHeight+20));
}

public void paint(Graphics g) {
super.paint(g);
int picX = this.getWidth()/2 - picWidth/2;
int picY = this.getHeight()/2 - picHeight/2;
g.drawImage(img, picX, picY, picWidth, picHeight, this);
g.setColor(Color.BLACK);
g.drawString(buttonText, picX, picY+10);
}

}
tommy___2005 2007-06-13
  • 打赏
  • 举报
回复
恐怕要自己派生一个jlabel,然后模拟jbutton的边界画法
likgui 2007-06-13
  • 打赏
  • 举报
回复
关注
esefei 2007-06-13
  • 打赏
  • 举报
回复
我自己顶!!

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧