pictrue类的练习
2024-10-21 14:41:38
这里遇到一个问题,因为导入的文件格式很大,所以内存占用特别高,就会在运行一段时间过后报错:内存不够
然后用了一个GC.collect();的方法,加在了timer控件里,让程序每隔1000ms换图时也让垃圾回收器清理一下内存,问题解决
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace picture控件练习
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
//播放音乐
clsMCI runMusic = new clsMCI();
runMusic.FileName = @"F:\影音\音乐\周杰伦\范特西\周杰伦 - 简单爱.mp3";
runMusic.play();
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
pictureBox2.SizeMode = PictureBoxSizeMode.StretchImage;
pictureBox3.SizeMode = PictureBoxSizeMode.StretchImage;
pictureBox4.SizeMode = PictureBoxSizeMode.StretchImage;
pictureBox5.SizeMode = PictureBoxSizeMode.StretchImage;
pictureBox6.SizeMode = PictureBoxSizeMode.StretchImage;
//在窗体加载的时候 给每个picturebox都赋值一个初始图
pictureBox1.Image = Image.FromFile(@"C:\Users\11849\Desktop\壁纸\插画\1.jpg");
pictureBox2.Image = Image.FromFile(@"C:\Users\11849\Desktop\壁纸\插画\2.jpg");
pictureBox3.Image = Image.FromFile(@"C:\Users\11849\Desktop\壁纸\插画\3.jpg");
pictureBox4.Image = Image.FromFile(@"C:\Users\11849\Desktop\壁纸\插画\4.jpg");
pictureBox5.Image = Image.FromFile(@"C:\Users\11849\Desktop\壁纸\插画\5.jpg");
pictureBox6.Image = Image.FromFile(@"C:\Users\11849\Desktop\壁纸\插画\6.jpg"); }
string[] path = System.IO.Directory.GetFiles(@"C:\Users\11849\Desktop\壁纸\插画");
int i = 0;
Random r = new Random();
private void timer1_Tick(object sender, EventArgs e)
{
//每隔一秒钟 就换一张图片
i++;
if (i == path.Length)
{
i = 0;
}
pictureBox1.Image = Image.FromFile(path[r.Next(0, path.Length)]);
pictureBox2.Image = Image.FromFile(path[r.Next(0, path.Length)]);
pictureBox3.Image = Image.FromFile(path[r.Next(0, path.Length)]);
pictureBox4.Image = Image.FromFile(path[r.Next(0, path.Length)]);
pictureBox5.Image = Image.FromFile(path[r.Next(0, path.Length)]);
pictureBox6.Image = Image.FromFile(path[r.Next(0, path.Length)]);
GC.Collect();
}
}
}
最新文章
- mybatis - resultMap
- 把VIM打造成IDE
- angularJS 报错: [ngModel:numfmt] http://errors.angularjs.org/1.4.1/ngModel/numfmt?p0=333
- xshell下载文件到本地/上传文件到服务器
- Xamarin Android设置界面提示类型错误
- 替换SearchBar 键盘上的 搜索 按钮
- form和validate示例
- #if...#endif的用法总结
- 使用Jquery解析Json基础知识(转)
- 使用Qt实现MDI风格的主窗体
- SQL Server 影响dbcc checkdb的 8 种因素
- POJ 2400 最小权匹配
- SIF与CIF
- nodeValue、firstChild和lastChild属性
- 网页数据抓取(B/S)
- 学习axios
- 【javaScript基础】异常处理
- 恶心github 下载慢
- php安全篇过滤用户输入的参数(转)
- Linux设备树使用(二)