我现在要在界面上显示50个图片控件,然后依靠Timer来使这50个图片控件中的1500图片进行交替替换,有什么方法可以让图片读取的时候很快?我使用了很多种方法,包括ImageList,但是这个控件我只能装进去不到100张,不然系统就提示内存不足了,这是一个图片抽奖,谁有这方面好的建议,我急求

解决方案 »

  1.   

    界面load的时候就把图片读入内存。
      

  2.   


    public partial class Form1 : Form
        {
            private Bitmap[] _bitmap;
            
            public Form1()
            {
                InitializeComponent();
                this._bitmap = new Bitmap[1500];
                for (int i = 0; i < 1500; i++)
                {
                    this._bitmap[i] = new Bitmap(@"文件路径");
                }
                //赋值给PICTUREBOX
                //this.pic[0].Image = (Image)this._bitmap[0];
            }
        }上面代码不会报内存不足的情况,但如果图片尺寸都很大,则载入是非常慢的。
      

  3.   

    List<T>保存Image图片信息,
    多线程获取数据实现替换
      

  4.   

    换个方法, 不要想着用实际的图片来替换
    用每个图片对应的名称来进行循环就好了,抽到时再依据名称取出图片
    至于如果有图片滚动效果这些嘛,可以用flash替换就好了