因此,我试图向 JScrollPane 元素添加多个元素,但到目前为止我还无法将其拉出。
我可以使第一个元素显示出来,在我的例子中是一张图片。但是在向 JScrollPane 添加额外的面板后,第一个元素消失了,甚至第二个元素(新面板)也没有显示在我的 JScrollPane 上。
JFrame scherm = new JFrame("t?");
scherm.setVisible(true);
scherm.setSize(300, 300);
scherm.setLocationRelativeTo(null);
scherm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//
String path = "C:\\Users\\Bernard\\Documents\\Paradox Interactive\\Crusader Kings II\\mod\\viking\\map\\provinces.bmp";
Image image = ImageIO.read(new File(path));
ImageIcon icon = new ImageIcon(image);
JLabel label = new JLabel(icon);
JScrollPane scroll = new JScrollPane(label);
JPanel paneel2= new JPanel();
paneel2.setSize(new Dimension(400,400));
scroll.getViewport().add(paneel2,null);
scherm.add(scroll);
感谢您的时间!
通过做这个:
scroll.getViewport().add(paneel2,null);
您正在尝试将组件添加到滚动窗格的JViewPort如下图所示:
这毫无意义。如中所述如何使用滚动窗格 trial:
A
JScrollPane提供组件的可滚动视图。
这个单一组件是视口的视图。因此,如果您希望滚动窗格中包含多个组件,则必须将所有这些组件包装在一个轻量级组件中,例如JPanel并将其设置为滚动窗格的视口视图:
JPanel content = new JPanel();
content.add(label);
content.add(paneel2);
scroll.setViewportView(content);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)