我有一个应用程序,我想在其中显示许多图像组件。其中的每一项都是custom jcomponent
,它会在BufferedImage
对象中包含图像,以便在paintcomponents(Graphics g)
覆盖的方法中绘制它。我还会使用JPanel
作为网格,其中gridlayout
或flowlayout
用于放置自定义图片jcomponents
,网格布局也位于JscrollPane
内。
我的问题是当我必须放入网格的图像数量变大时会发生什么。使用jscrollpane
时,组件的数量因此必须绘制的图像数量将更小,如20-30个组件,但插入网格的每个组件将具有BufferedImage对象以保持相应的图片。这对性能和内存消耗有害吗?可以用一些模式吗?例如,如果我使用一个主要参考点将图像从磁盘加载到bufferedimage
,并根据用户scrollpane
的哪个矩形,然后释放一些缓冲图像,它们放在当前网格中jscrollpane
的位置?
谢谢。