private void 相册浏览_Click(object sender, EventArgs e)
{//private Bitmap SourceBitmap, MyBitmap;
OpenFileDialog 打开文件 = new OpenFileDialog(); this.图像显示.Image = null;//打开图像文件//打开文件.Multiselect = true;
打开文件.Filter = "图像文件(JPeg, Gif, Bmp, etc.)|*.jpg;*.jpeg;*.gif;*.bmp;*.tif; *.tiff; *.png|"
+ " JPeg 图像文件(*.jpg;*.jpeg)|*.jpg;*.jpeg |GIF 图像文件(*.gif)|*.gif |BMP图像文件(*.bmp)|*.bmp|"
+ "Tiff图像文件(*.tif;*.tiff)|*.tif;*.tiff|Png图像文件(*.png)| *.png |所有文件(*.*)|*.*";
if (打开文件.ShowDialog() == DialogResult.OK) { 显示图像(打开文件.FileName); 上一图.Enabled = false; 下一图.Enabled = false; } else { 上一图.Enabled = true; 下一图.Enabled = true; }
FolderBrowserDialog 文件夹 = new FolderBrowserDialog(); 文件夹.Description = "请选择图像文件夹路径:";
if (this.Text.IndexOf("^") >= 0)
{
if (图像文件表 == null)
{
string[] 设备目录 = this.Text.Split(new char[2] { '[', ']' });
String 保存路径 = @System.Environment.CurrentDirectory + "\\设备相册集\\" + 设备目录[1];
保存路径 = 保存路径.Replace("/", "\\"); System.Diagnostics.Process.Start("explorer.exe ", 保存路径);
}
}
else
{ if (文件夹.ShowDialog() == DialogResult.OK) { 图数.Text = "没图?"; string 目录名 = @文件夹.SelectedPath; 遍历文件(目录名); } }
//DirectoryInfo di = new DirectoryInfo(@"c:\MyDir");
//try { if (di.Exists) { return; } di.Create(); di.Delete(); }
//catch (Exception ee) { Console.WriteLine("The process failed: {0}", ee.ToString()); }
//finally { }
}
private void 遍历文件(string 指定目录)
{
DirectoryInfo 目录 = new DirectoryInfo(指定目录);
//DirectoryInfo[] 子目录集 = 目录.GetDirectories();
//foreach (DirectoryInfo 读目 in 子目录集)
//{
// if (读目.Parent.ToString() == "Image") { }
// FileInfo[] 文件列表 = 读目.GetFiles();
// foreach (FileInfo 读件 in 文件列表) { }
// DirectoryInfo[] 返回子目录 = 读目.GetDirectories();
// if (返回子目录.Length > 0) { 遍历文件(读目.FullName); }
//}
//DirectoryInfo 目录 = new DirectoryInfo(指定目录);
int i = 0; string 图类 = "*.JPG*.JPEG*.GIF*.BMP*.TIF*.TIFF*.PNG*.ICO*.jpg*.jpeg*.gif*.bmp*.tif*.tiff*.png*.ico";
图像文件表 = new string[目录.GetFiles().Length - 目录.GetFiles("*.ini").Length];
foreach (FileInfo 读名 in 目录.GetFiles())
{ if (图类.IndexOf(读名.Extension) >= 0) { 图像文件表[i] = 目录.FullName + "\\" + 读名.Name; i++; } }
if (图像文件表.Length > 0 && 图像文件表[0] != null) { 显示图像(图像文件表[0]); 图数.Text = "1/" + 图像文件表.Length.ToString(); 上一图.Enabled = true; 下一图.Enabled = true; }
}
private void 显示图像(string 文件径名)
{
if (文件径名 != null)
{
Bitmap 原始图像 = new Bitmap(文件径名);//得到原始大小的图像
if (图像显示.Width > 原始图像.Width) { 图像显示.Width = 原始图像.Width; this.图像显示.Image = 原始图像; }
else if (图像显示.Height > 原始图像.Height) { 图像显示.Height = 原始图像.Height; this.图像显示.Image = 原始图像; }
else//得到缩放后的图像
{ Bitmap 显示图象 = new Bitmap(原始图像, this.图像显示.Width, this.图像显示.Height); this.图像显示.Image = 显示图象; }
}
else { MessageBox.Show("该文件不是图形图像文件,无法显示浏览!", "错误提示"); }
}
private void 上一图_Click(object sender, EventArgs e)
{
if (公共数[0] < 图像文件表.Length - 1 && 图像文件表 != null)
{ 公共数[0]++; if (图像文件表[公共数[0]] != null) { 显示图像(图像文件表[公共数[0]]); 图数.Text = (公共数[0] + 1).ToString() + "/" + 图像文件表.Length.ToString(); }
else { if (公共数[0] == 图像文件表.Length) { MessageBox.Show("文件浏览已经到最后面!", "友情提示"); } else MessageBox.Show("该文件不是图形图像文件,无法显示浏览!", "错误提示"); } }
}
private void 下一图_Click(object sender, EventArgs e)
{
if (公共数[0] <= 图像文件表.Length && 公共数[0] > 0 && 图像文件表 != null)
{ 公共数[0]--; 显示图像(图像文件表[公共数[0]]); 图数.Text = (公共数[0] + 1).ToString() + "/" + 图像文件表.Length.ToString(); }
else { if (公共数[0] == 0) { MessageBox.Show("文件浏览已经到最前面!", "友情提示"); } else { MessageBox.Show("该文件不是图形图像文件,无法显示浏览!", "错误提示"); } }
}
private void 图像显示_DoubleClick(object sender, EventArgs e)
{
FolderBrowserDialog 文件夹 = new FolderBrowserDialog(); 文件夹.Description = "请选择保存图像文件夹路径:";
if (this.Text.IndexOf("^") >= 0)
{
string[] 设备目录 = this.Text.Split(new char[2] { '[', ']' });
String 保存路径 = @System.Environment.CurrentDirectory + "\\设备相册集\\" + 设备目录[1];
保存路径 = 保存路径.Replace("/", "\\"); System.Diagnostics.Process.Start("explorer.exe ", 保存路径);
}
else
{ if (文件夹.ShowDialog() == DialogResult.OK) { 图数.Text = "没图?"; string 目录名 = @文件夹.SelectedPath; 遍历文件(目录名); } }
}
怎样能用picturebox切换图片 就是有一个按钮上一张 下一张那样
最新推荐文章于 2022-12-08 21:00:00 发布