内存太大了
我的界面上有很多的pic上面加载的是同一个图片。但是,我发现给每个图片加载之后内存占的太大了。有没有什么办法可以减少下内存的占用,因为没个pic都是引用同一个图片。
[解决办法]
Image img=....
图片压缩大小
graghic g=;
g.DrawImage();
pic.Image=img2;
pic2.Image=img2;
[解决办法]
即使都是同一个图片,但是显示在多个image上,都是要分别加载到内存的,你可以同上引用一个image,不过那样,他们 会互相影响的,应该不是你要的效果
[解决办法]
所有pic指向同一Paint事件,在里面进行绘图操作
public Form1() { InitializeComponent(); pictureBox1.Paint += new PaintEventHandler(pictureBox_Paint); pictureBox2.Paint += new PaintEventHandler(pictureBox_Paint); pictureBox3.Paint += new PaintEventHandler(pictureBox_Paint); } Image img = Image.FromFile(@"C:\Users\SaeWind\Desktop\123\1.png"); void pictureBox_Paint(object sender, PaintEventArgs e) { PictureBox pic = (PictureBox)sender; Graphics g = e.Graphics; g.DrawImage(img, new Rectangle(0, 0, pic.Width, pic.Height)); }
[解决办法]
这样 pictureBox1.Image一直为null
[解决办法]
新手,随便说下:能不能指向同一个栈区呢?