我需要在我的电脑文件系统中显示图像。图像存储在 -
C:\ Users \ Akshay \ Desktop \ allfiles
相关代码是(向右滚动):
JFrame frame = new JFrame();
frame.setExtendedState( frame.getExtendedState()|JFrame.MAXIMIZED_BOTH );
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setLayout(new FlowLayout());
JLabel title = new JLabel("Image : ");
ImageIcon image = new ImageIcon("C:\\Users\\Akshay\\Desktop\\allfiles\\sampleposter.jpg"); //line #1
JLabel l = new JLabel("");
l.setIcon(image); // line #2
frame.add(title);
frame.add(l);
以下是输出。我得到一个空框而不是两个jlabels。
在代码中注释第2行,即 -
l.setIcon(image);
我得到相同的输出而不是两个简单的JLabels
在评论第1行和第2行时,我得到两个标签(一个空),如下所示。
如何使用其他标签正确显示图像?这可能是什么问题?
答案 0 :(得分:3)
你添加了JLabel title = new JLabel(“Image:”);在setVisible(true)之后到已经可见的Swing GUI;被称为,
在frame.setVisible(true)之前移动使用ImageIcon创建JLabel的代码行;
移动代码行frame.setLayout(new FlowLayout());在frame.setVisible(true);