单击下一步时无法在jScrollPane中更改图像

时间:2017-05-22 19:15:04

标签: java swing

我正在创建一个jframe,我正在添加一个图像,随着我点击下一个图像会发生变化。我编写了一段代码,但它不起作用。这就是代码:

    i++;
    ImageIcon icon = new ImageIcon(mean.get(0));
    Image image = icon.getImage(); // transform it
    Image newimg = image.getScaledInstance(180, 140,  java.awt.Image.SCALE_SMOOTH); // scale it the smooth way
    icon = new ImageIcon(newimg);
    JLabel label = new JLabel( icon );
    jScrollPane1= new JScrollPane( label );

请帮忙

3 个答案:

答案 0 :(得分:2)

问题在于:

jScrollPane

其对象放在JFrame中的字段jLabel1设置为另一个JScrollPane,其对象未添加到GUI中。

将原始标签存储在字段中,例如repaint并设置该标签。

可能需要crypto/ssh

答案 1 :(得分:0)

您需要致电:

  • 重新验证()
  • 重绘()

请参阅Java Swing revalidate() vs repaint()

的解释

答案 2 :(得分:0)

将此添加到代码jScrollPane1的末尾。如果尚未创建JFrame已创建如下所示,请将jScrollPane1添加到JFrame

JFrame frame = new JFrame();
frame.add(jScrollPane1, BorderLayout.CENTER);

还可以将布局设置为BorderLayout,但您也可以尝试其他布局或不添加布局。