这就是我的问题:
我有一个应用程序,它每次迭代都会向我返回一个图像列表。图像具有不同的大小,并且要显示的图像的数量每次都不同。
有没有一种方法可以在不知道要创建的jPanels数量的情况下在jFrame中显示所有图像?有什么简单的方法可以做到这一点吗?
Obs。:图像应该同时显示,比如并排显示,或者列出,因为它们用于比较目的。
目标2:每次显示的图像数量约为20-60张。
谢谢
发布于 2010-01-28 23:33:48
根据您的问题,我假设您能够在JPanel
中显示图像。在这种情况下,您可以保留一个JPanels
列表并动态更新该列表。当然,要在JFrame
上绘制的布局完全由您决定,但是对于这样的工作,您可能希望使用GridLayout
或BoxLayout
。
要保留JPanels列表,请执行以下操作:
ArrayList<JPanel> panelList = new ArrayList<JPanel>();
...
panelList.add(new JPanel());
...
panelList.clear();
发布于 2010-01-28 23:33:04
这个解决方案应该是可行的:
class MyFrame extends JFrame
{
MyFrame(Image images[])
{
JTabbedPane tabbed= new JTabbedPane();
setContentPane(tabbed);
for(int i=0;i< images.length;++i)
{
tabbed.addTab("Image "+i, new JScrollPane(new JLabel(new ImageIcon(images[i]))));
}
}
发布于 2010-01-29 00:47:42
如果你使用JInternalFrame来做这件事,你也可以拖动图片并改变大小。
https://stackoverflow.com/questions/2155596
复制相似问题