- 以下是整个程序的源代码:
- <pre name="code" class="html">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;
- using System.IO;
- namespace 图片浏览器
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- int[] num;
- int p = 0;
- private void Form1_Load(object sender, EventArgs e)
- {
- //统计loltouxiang目录下的图片数量
- FileSystemInfo info = new DirectoryInfo(@"d:\c#\loltouxiang");
- if (!info.Exists) return;
- DirectoryInfo dir = info as DirectoryInfo;
- if (dir == null) return; //不是目录
- FileSystemInfo[] pictures = dir.GetFileSystemInfos();
- for (int i = 0; i < pictures.Length; i++)
- {
- p++;
- }
- //用数组记录图片显示次数并初始化数组
- num = new int[p];
- }
- private void button1_Click(object sender, EventArgs e)
- {
- //随机显示图片
- Random ran = new Random();
- imageList1.ImageSize=new Size(120,120);
- int t=0;//记录随机数的变量
- t=ran.Next(p);
- pictureBox1.Image=imageList1.Images[t];
- num[t]++;
- this.label2.Text = num[t].ToString();
- }
- }
- }
以下是界面设计:
以下的运行后,多次按下【随机显示的结果】:
以下是分部说明该程序:
首先是页面设计:
用到的控件有:picturebox,imageList,buttom,label
依次添加控件到页面即可
然后点击imageList1,设置图片大小,再点击选择图片,添加【loltouxiang】怎么文件目录里面的文件
以下是代码的说明:
num[ ] 是用来记录图片已经显示的次数,图片较多;
p 是用来统计文件目录里面一共有几张图片;
- int[] num;
- int p = 0;
在页面Form1里完成图片数量的统计和数组的初始化
打开文件目录"d:\c#\loltouxiang"
遍历该文件目录下的所有文件
有for循环,p统计该目录里的文件数量
并申请空间new int[p] 为num[ ]数组初始化
- <pre name="code" class="html">private void Form1_Load(object sender, EventArgs e)
- {
- //统计loltouxiang目录下的图片数量
- FileSystemInfo info = new DirectoryInfo(@"d:\c#\loltouxiang");
- if (!info.Exists) return;
- DirectoryInfo dir = info as DirectoryInfo;
- if (dir == null) return; //不是目录
- FileSystemInfo[] pictures = dir.GetFileSystemInfos();
- for (int i = 0; i < pictures.Length; i++)
- {
- p++;
- }
- //用数组记录图片显示次数并初始化数组
- num = new int[p];
- }
用ImageSize调制图片显示的大小
random随机选择imageList1里的图片
用imageList.Images[ ]显示该随机选择的图片
最后用num[ ]数组来对应images[ ]里的图片顺序,从而达到计数功能
- private void button1_Click(object sender, EventArgs e)
- {
- //随机显示图片
- Random ran = new Random();
- imageList1.ImageSize=new Size(120,120);
- int t=0;//记录随机数的变量
- t=ran.Next(p);
- pictureBox1.Image=imageList1.Images[t];
- num[t]++;
- this.label2.Text = num[t].ToString();
- }