马上加入IBC程序猿 各种源码随意下,各种教程随便看! 注册 每日签到 加入编程讨论群

C#教程 ASP.NET教程 C#视频教程程序源码享受不尽 C#技术求助 ASP.NET技术求助

【源码下载】 社群合作 申请版主 程序开发 【远程协助】 每天乐一乐 每日签到 【承接外包项目】 面试-葵花宝典下载

官方一群:

官方二群:

C#图片浏览器的问题

[复制链接]
查看5085 | 回复2 | 2013-9-14 20:14:22 | 显示全部楼层 |阅读模式
程序说明:(1)当点击“选择图片”时,每添加一张图片就在picturebox中显示出上一次添加的图片,并在ListBox中显示所添加图片的路径
(2)放映速度默认为慢速3秒,当点击幻灯片放映图片时根据放映速度放映图片,且选定放映图片后“下一张”不可用
程序问题:(1)InvalidArgument=“1”的值对于“index”无效。(当添加图片时每次到第二张显示这个)
  (2)如果成功无措的话,那么放映图片过程中是无法中断的,那么问题在于在不使用线程的情况下,如何让可中断放映呢?
  (3)图片无法设置大小超过(256,256)『非拉伸图片,否则图片严重不清晰』,否则报错,是因为picturebox中显示的图片无法超过256呢,还是什么其他原因,请各位大神请教
程序代码:public Windows窗体的图片切换效果()
        {
            InitializeComponent();
        }
        

        ImageList IL;
        public int i = 0;
        private void Add_Pt_Click(object sender, EventArgs e)  //添加图片
        {
            IL= new ImageList();
            
            openFileDialog1.Filter = "(*.jpg)|*.jpg";
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                string Add_Pt = openFileDialog1.FileName;
                 listBox1.Items.Add(openFileDialog1.FileName);
                 Image I_Add = Image.FromFile(Add_Pt, true);
                IL.Images.Add(I_Add);
                IL.ImageSize = new Size(256,256);
                pictureBox1.Image=IL.Images;
                i++;
            }
        }

        private void Windows窗体的图片切换效果_Load(object sender, EventArgs e)//程序加载事件
        {
            Select_Show_V.Items.Add("快(1秒)");
            Select_Show_V.Items.Add("中(3秒)");
            Select_Show_V.Items.Add("慢(5秒)");
            Select_Show_V.Items.Add("特慢(7秒)");
            Select_Show_V.Items.Add("非常慢(10秒)");

            Select_Show_V.SelectedIndex = 0;
        }

        private void Show_Pt_Click(object sender, EventArgs e)//幻灯片放映图片
        {
            Next_Pt.Enabled = false;
            int times=3;
            switch (Select_Show_V.SelectedIndex)
            {
                case 0: times = 1; break;
                case 1: times = 3; break;
                case 2: times = 5; break;
                case 3: times = 7; break;
                case 4: times = 10; break;
                default: break;
            }

            if (IL.Images.Count != 0)
            {
                int i = 0;
                while (true)
                {
                    Thread.Sleep(times * 1000);
                    pictureBox1.Image = IL.Images;
                    if (i == IL.Images.Count)
                    {
                        break;
                    }
                    i++;
                }
            }
            else
            {
                MessageBox.Show("请先导入图片(添加图片)","提示");
            }
        }

        private void Stop_Show_Click(object sender, EventArgs e)//停止放映图片
        {
            Next_Pt.Enabled = true;
            pictureBox1.Image = IL.Images[0];
        }
    }

这个是我的窗体应用程序的图片

这个是我的窗体应用程序的图片
QQ截图20130914200850.png
ibcadmin | 2013-9-14 22:15:18 | 显示全部楼层
帮你远程
C#论坛 www.ibcibc.com IBC编程社区
C#
C#论坛
IBC编程社区
IoveBC | 2013-9-15 22:48:06 | 显示全部楼层
额,能在白天不?
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则