C# 图片浏览器(源码),可统计图片数量,选择要加载的图片格式,图片显示方式

原创 小道  2018-12-19 15:51:50  阅读 1080 次 评论 0 条
摘要:

C# 图片浏览器(源码):1.可统计文件夹内图片数量。2.选择要加载的图片格式(.JPG .PNG .GIF .BMP)。3.图片显示的方式:(1.)居中默认大小显示(2.)拉伸收缩大小显示(3.)比例收缩大小显示(4.)左上默认大小显示

C# 图片浏览器(源码):

1.可统计文件夹内图片数量。

2.选择要加载的图片格式(.JPG .PNG .GIF .BMP)。

3.图片显示的方式:

(1.)居中默认大小显示

(2.)拉伸收缩大小显示

(3.)比例收缩大小显示

(4.)左上默认大小显示


主要使用的代码:

info.cs静态类包含:

using System.Collections.Generic;

namespace 图片查看浏览器
{
    public static class info
    {
        public static AMain _a;//用于获取主窗体
        public static string _path = @".\";//路径
        public static bool _count;//是否统计图片数量
        public static string _format = "";//图片格式字符串。用于分割。
        public static string[] _formatArr;//分割后的保存 图片格式 数组。
        public static List<string> _photo = new List<string>();//图片泛型
        public static int _num = -1;//用于保存图片泛型的 下标 。
        public static int _cmbNum = 0;//图片显示方式
    }
}

判断是否统计图片个数 和 图片格式:

        private void PicFormat()//判断是否统计图片个数 和 图片格式
        {
            #region 判断是否统计图片个数 和 图片格式
            if (rbYes.Checked)//判断 单选框是否选中
            {
                info._count = true;
            }
            else if (rbNo.Checked)//判断 单选框是否选中
            {
                info._count = false;
            }
            if (cbJPG.Checked)//判断多选框 是否选中
            {
                info._format += ".JPG|";
            }
            if (cbPNG.Checked)//判断多选框 是否选中
            {
                info._format += ".PNG|";
            }
            if (cbGIF.Checked)//判断多选框 是否选中
            {
                info._format += ".GIF|";
            }
            if (cbBMP.Checked)//判断多选框 是否选中
            {
                info._format += ".BMP|";
            }
            #endregion
        }

判断文件夹内是否有图片:

        private void GetPic()//判断文件夹内是否有图片
        {
            #region 判断文件夹内是否有图片
            string[] allPath = Directory.GetFiles(info._path);//获取文件夹内的文件
            info._formatArr = info._format.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);//获取文件扩展名

            foreach (var p in allPath)//遍历获取的文件
            {
                foreach (var f in info._formatArr)//遍历 选择的图片格式
                {
                    if (f.ToLower() == p.Substring(p.LastIndexOf('.')).ToLower())//判断 选择的图片扩展名是否和获取的文件扩展名相同
                    {
                        info._photo.Add(p);//相同则添加到数组中。
                    }
                }
            }
            if (info._photo.Count <= 0)//判断数组内是否有数据。为真表示没图片
            {
                if (MessageBox.Show("当前文件夹内没有您选中的图片格式,请重新选择.\r\n仅支持 .JPG .PNG .GIF .BMP 格式。", "文件夹内无图片!", MessageBoxButtons.OK, MessageBoxIcon.Error) == DialogResult.OK)//判断是否点击消息框的OK按钮
                {
                    info._format = "";//恢复默认值
                    info._photo.Clear();//清空数组
                    info._num = -1;//恢复默认值
                    return;
                }
            }
            else//为假,则说明有图片。
            {
                info._num = 0;//有图片则将 _num 赋值为0,在数组中为第一张图片地址的索引数
                BMain B = new BMain();//实例话 窗体
                this.Hide();//隐藏当前窗体
                B.Show();//显示B窗体
            }
            #endregion
        }

选择图片框显示类型:

            #region 选择图片框显示类型
            switch (info._cmbNum)//判断下拉框的值
            {
                case 1:
                    pbphoto.SizeMode = PictureBoxSizeMode.StretchImage;//拉伸收缩大小显示
                    break;
                case 2:
                    pbphoto.SizeMode = PictureBoxSizeMode.Zoom;//比例收缩大小显示
                    break;
                case 3:
                    pbphoto.SizeMode = PictureBoxSizeMode.AutoSize;//左上默认大小显示
                    break;
                case 0:
                default:
                    pbphoto.SizeMode = PictureBoxSizeMode.CenterImage;//居中默认大小显示
                    break;
            }
            #endregion

下一张 按钮 单击事件:

        private void btnX_Click(object sender, EventArgs e)//下一张 按钮 单击事件
        {
            info._num++;//图片数组索引数+1
            if (info._num < info._photo.Count)//判断 图片索引数是否小于 图片数组最大索引数
            {
                pbphoto.Image = Image.FromFile(info._photo[info._num]);//如果小于 则显示图。
            }
            else
            {
                info._num = 0;//如果大于图片数组最大索引数,则图片索引数 为0 (第一张图片)
                pbphoto.Image = Image.FromFile(info._photo[info._num]);//显示第一张图片
            }
        }

输出结果:

image.pngimage.pngimage.png


如需本软件完整源码请留言!仅限学习交流使用!



图片浏览器来源:本站
已经过安全软件检测无毒,请您放心下载。
本文地址:https://www.daobk.com/post/148.html
版权声明:本文为原创文章,版权归 小道 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

还没有留言,还不快点抢沙发?