JFrame怎么添加图片?

JFrame怎么添加图片?,第1张

你这里犯了2个错误,Image类是一个抽象类,不能实例化,而且根本没有这个构造方法...还有你这只是设置窗口的图标,并不是窗体添加背景,

正确写法:

Frame frame=new Frame("设置Java窗口的图标")

Toolkit tool=frame.getToolkit()//得到一个Toolkit对象

Image myimage=tool.getImage("1.jpg")//由tool获取图像

frame.setIconImage(I:\Language\Start\Language.jpg)

添加背景的写法:

目前我知道有两种:

可以尝试重写paint(Graphics g)方法,里面调用DebugGraphics的drawImage(Image img,int x,int y,ImageObserver observer)()方法

第二种是利用添加组件JLabel,JLabel类有一个构造方法Label(Icon Image)

给你一个例子:

ImageIcon ii = new ImageIcon("I:\Language\Start\Language.jpg")

JLabel lb = new JLabel(ii)

JFrame1.add(lb)

import javax.swing.*

import java.awt.*

class MyPanel extends JPanel{

public void paint(Graphics g){

Image im=Toolkit.getDefaultToolkit().getImage("c:/zx.jpg")//图片位置要写对

g.drawImage(im,0,0,this)

}

}

public class ImageTest extends JFrame{

ImageTest(){

super("My Window")

setSize(400,300)

setContentPane(new MyPanel())

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE)

setVisible(true)

}

public static void main(String[] args) {

new ImageTest()

}

}//创建一个JPanel,然后重写JPanel的paint()把图片画到面板上,再把面板设为JFrame的内容面板。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11509887.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存