这看起来像是一个新手问题,只是我一直试图围绕Swing框架将自己的头围绕在冗长的时间。Java Swing混合窗格
如果您提供一个图片dog.jpg,至少500 px square,以下代码应该在滚动窗格中显示图像。如果它显示什么,我可能不会把我的手放在绝望中。我错过了什么?
import java.awt.BorderLayout;
import javax.swing.*;
public class ScrollSample {
public static void main(String args[]) {
String title = (args.length == 0 ? "JScrollPane Sample" : args[0]);
new ScrollSample(title) ;
}
public ScrollSample (String title) {
JFrame frame = new JFrame(title);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Icon icon = new ImageIcon("dog.jpg");
JLabel dogLabel = new JLabel(icon);
dogLabel.setSize(500, 500) ;
JLayeredPane layeredPane = new JLayeredPane() ;
layeredPane.add(dogLabel, new Integer(0)) ;
JPanel jp = new JPanel() ;
jp.add(layeredPane) ;
jp.setSize(500, 500) ;
JScrollPane scrollPane = new JScrollPane();
scrollPane.setViewportView(jp);
frame.getContentPane().add(scrollPane, BorderLayout.CENTER);
frame.setSize(300, 200);
frame.setVisible(true);
}
}
谢谢!
像往常一样,我建议使用[windowbuilder亲(https://developers.google.com/java-dev-tools/wbpro/quick_start) – Kai 2012-03-29 14:19:58
找不到任何明显的错误与您的代码。你有没有把dog.jpg放到你的项目根目录中? – 2012-03-29 14:22:18