2013-10-30 57 views
0

因此,我创建的程序在运行时创建的图片框中显示来自互联网的图片。我为每张照片创建一个picturebox,每次屏幕上有6个picturebox。但问题是,当我向下滚动越来越多的图片加载导致程序占用大量的内存。所以我想知道如何在不丢弃图片的情况下“卸载”已经通过的图片,这样我就可以再次上去看看它们,而不必再从网络服务器上再次取回它们(如果这甚至可能的话)。如果我是正确的,这应该会减少内存消耗。VB.NET如何仅在可见的图片框中显示图像

我添加了这张照片,可能有助于理解这个问题。

enter image description here

+0

下一个和上一个按钮一次只能加载6次吗? – OneFineDay

+0

不要存储整个图像,调整它的大小,以便它适合盒子,因此需要更少的内存。 –

+0

@DonA是的,这将工作,但它会有利于能够向下滚动,而不是点击下一个和上一个我可能会使用,如果我没有得到其他答复,谢谢:) – user2093367

回答

0

保存图片到本地磁盘,只在记忆基础上,他们将滚动的地方加载约100个左右。

随着用户滚动,您可以从本地驱动器加载图像。如果它们滚动到某处尚未加载到内存中的位置,则会在图片从本地驱动器加载时显示加载标志。

您将会更频繁地在内存中加载/卸载,但加载的最大数量会更少。

+0

这是一个好方法,为什么我没有想到这一点,谢谢 – user2093367

+0

没问题,很高兴我能帮忙! – basher

相关问题