java 选择图片 显示不出来的_求教,为什么我这窗体的图片显示不出来

在Java程序中,开发者尝试将图片显示在窗体上,但遇到了图片无法显示的问题。代码尝试从E盘读取名为'未命名2.JPG'的图片,并通过ImageIO读取。尽管代码能正确读取图片路径并打印提示,但在窗体上没有成功显示。问题可能在于绘制图片的方法。开发者寻求解决方案。
摘要由CSDN通过智能技术生成

已结贴√

问题点数:20 回复次数:3

ca56232b3bbedf9a539d07f37fffb99a.gif

3144d8b7615c79d9f638db40d5689d26.gif

a218af6549b45ee526caf607ebff1358.gif

0f8df0e29816ae721419de940fb833d1.gif

求教,为什么我这窗体的图片显示不出来

我想把一个路径为E:\\未命名2.JPG的图片显示到窗体上,但是为啥显示不出来呢?代码如下:

package ft;

import java.awt.BorderLayout;

import java.awt.FileDialog;

import java.awt.FlowLayout;

import java.awt.Graphics;

import java.awt.Image;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import

import

import javax.imageio.ImageIO;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JTextField;

public class MyTest extends JFrame implements ActionListener{

JButton jbtn = null;

JTextField jtf = null;

JPanel bp1 = new JPanel();

JPanel bp2 = new JPanel();

public MyTest(){

this.setLayout(new FlowLayout());

jbtn = new JButton("打开..");

jbtn.addActionListener(this);

jtf = new JTextField(30);

ImageP p = new ImageP();

bp2.add(p);

bp1.add(jtf);

bp1.add(jbtn);

this.add(bp1,BorderLayout.SOUTH);

this.add(bp2,BorderLayout.NORTH);

this.setSize(400,400);

this.setVisible(true);

this.pack();

}

public void actionPerformed(ActionEvent e) {

if(e.getSource().equals(jbtn)){

int response = 1;

do{

FileDialog fd = new FileDialog(this);

fd.setVisible(true);

String a = fd.getDirectory()+fd.getFile();

System.out.println(a);

this.setVisible(false);

Object[] options = {"是,我要继续生成新XML","否,我想退出程序"};

response=JOptionPane.showOptionDialog(this, "XML已生成,是否继续生成新XML?", "亿阳报表自动化系统",JOptionPane.YES_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, options[0]);

if(response == 1)

{

System.exit(0);

}

}while(response == 0);

}

}

public static void main(String[] args){

new MyTest();

}

}

class ImageP extends JPanel{

JPanel bp2 = new JPanel();

private Image image;

public ImageP(){

try{

image = ImageIO.read(new File("E:\\未命名2.JPG"));

}catch(IOException e){

e.printStackTrace();

}

if(image == null){

System.out.println("222");

}else{

System.out.println("333");

}

}

public void ImageP2(Graphics g){

super.printComponents(g);

g.drawImage(image,0,0,null);

}

}

搜索更多相关主题的帖子:

窗体

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值