关于登录界面的背景图片设置问题

来源:互联网 发布:如何建设网络强国800字 编辑:程序博客网 时间:2024/05/20 11:50

1、图片如何添加

其实并没有用关于添加图片的方法,,只是单独写一个继承了JPanel的类,再new一下这个类即可,例子如下

public class LoginPanel extends JPanel //定义类继承JPanel{public int width, height;private Image img;public LoginPanel() //初始化{super();URL url = getClass().getResource("/res/login.jpg");img = new ImageIcon(url).getImage();}protected void paintComponent(Graphics g) {super.paintComponent(g);//为了确保超类(paintcomponent)完成自己那部分工作,必须在绘制自己的内容前调用  p245g.drawImage(img, 0, 0, this);//设置图片位置}}
把这个类实例化,再添加到JFrame里就完成了。其他的按钮、标签、文本域等组件可以添加到JPanel中,也可以添加到JFrame中。

这里有几点需要注意

(1)图片的位置设置,一般放在源代码的的res文件里,并且更换图片时一定记得刷新Eclipse里左边项目里的res文件夹,否则会出现空指针的情况。并且,即使你把原图删除了,你还用原图的名字,那么显示的还是原图,据我推测,这应该是把图片放在了java的缓冲器里,所以才会这样。
(2)

protected void paintComponent(Graphics g)

这种写法是固定的,是为了刷新图片,系统会自动调用此方法,无需人工调用。


0 0