本文目录一览:
Java图片显示不出来,怎么解决
有两个问题:
图片路径没有写对,图片在 src 下,图片路径应是 src/海洋.png,正确的写法应是 image = new ImageIcon("src/海洋.png")
image = new ImageIcon("src/海洋.png") 应该放在 label = new JLabel(image); 前面。
如下例:
import javax.swing.*;
class JPanelDemo extends JPanel {
JLabel label;
JTextField text;
JButton button;
ImageIcon image;
public JPanelDemo() {
image = new ImageIcon("src/test.png");
label = new JLabel(image);
text = new JTextField(20);
button = new JButton("确定");
add(label);
add(text);
add(button);
}
}
public class App extends JFrame {
public App() {
this.setSize(500, 400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.add(new JPanelDemo());
}
public static void main(String[] args) {
new App().setVisible(true);
}
}
怎么在java面板中显示一张图片
是这样的,你在面板上搞一个和面板一样大的JLabel
然后,通过JFileChooser获得路径,利用这个图片的路径,构建一个ImageIcon
最后,根据这个ImageIcon去给JLabel对象setIcon(ImageIcon对象);
具体地:
1.panel.add(label,BorderLayout.CENTER);
2.ImageIcon icon = new ImageIcon(url);
3.label.setIcon(icon);
下面的代码你把 .JPG改成BMP试试看,O(∩_∩)O~
package com.shlq.sample;
import java.awt.BorderLayout;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class ImagePane extends JPanel
{
JLabel jl = null;
ImageIcon img = null;
public ImagePane()
{
img = new ImageIcon( "E:\\Picture\\1.jpg ");
jl = new JLabel(img);
this.setLayout(new BorderLayout());
this.add(jl, BorderLayout.CENTER);
}
public static void main(String[] args)
{
JFrame test = new JFrame( "Image Pane ");
test.getContentPane().add(new ImagePane());
test.pack();
test.setVisible(true);
test.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
}
}
java图片显示一半
你看一下图片文件大小,如果图片文件变小了,说明上传的时候图片文件没有完整地被上传,这个时候需要你找一个网络好的地方重新上传。如果图片文件大小一样,把文件下载回本地,用图片工具打开看看图片是不是能完整显示,如果能完整显示,那就是用户那边的网络不够顺畅造成的,如果不能完整显示,则需要你找一个网络好的地方重新上传原图。总之,就是要想办法确定是服务器上图片本身有问题还是用户网络有问题。