因此,我试图向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中,如下图所示:
这是没有道理的。如如何使用滚动窗格试用版所述:
甲JScrollPane的提供了一个组件的可滚动视图。
该单个组件是视图端口的视图。因此,如果要在滚动窗格中包含多个组件,则必须将所有这些组件包装在轻量级组件(例如JPanel)中,并将其设置为滚动窗格的视图端口视图:
JPanel content = new JPanel();
content.add(label);
content.add(paneel2);
scroll.setViewportView(content);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句