【问题标题】:Three Imges load from three url and show in 3 picturebox从三个 url 加载三个图像并显示在 3 个图片框中
【发布时间】:2016-02-11 04:09:20
【问题描述】:

我正在尝试从 3 个 url 请求 3 张图片,然后尝试在三个图片框中显示。但我的代码有问题。答案非常感谢!

       private void button1_Click(object sender, EventArgs e)
        {


           var request1 = WebRequest.Create("https://upload.wikimedia.org/wikipedia/commons/thumb/f/f8/Schloss_Neuschwanstein_2013.jpg/300px-Schloss_Neuschwanstein_2013.jpg");
           var request2 = WebRequest.Create("https://upload.wikimedia.org/wikipedia/commons/thumb/f/f8/Schloss_Neuschwanstein_2013.jpg/300px-Schloss_Neuschwanstein_2013.jpg");
          var request3 = WebRequest.Create("https://upload.wikimedia.org/wikipedia/commons/thumb/f/f8/Schloss_Neuschwanstein_2013.jpg/300px-Schloss_Neuschwanstein_2013.jpg");




        using (var response1 = request1.GetResponse())
        using (var response2 = request2.GetResponse())
        using (var response3 = request2.GetResponse())


        using (var stream1 = response1.GetResponseStream())
        using (var stream2 = response2.GetResponseStream())
        using (var stream3 = response2.GetResponseStream())


        {
            pictureBox1.Image = Bitmap.FromStream(stream1);
            pictureBox2.Image = Bitmap.FromStream(stream2);
            pictureBox3.Image = Bitmap.FromStream(stream3);

          }

      }

   }
 }

【问题讨论】:

  • 真正的问题是什么?
  • @JohnLouieDelaCruz 我的编码没有运行,每当我尝试运行它时,它就会挂起。
  • 请添加更多详细信息,例如堆栈跟踪 (by logging)、显示重现问题的方法、显示预期结果以及使用的类的详细信息

标签: c# image url picturebox


【解决方案1】:

你可以试试这个。

    private void button1_Click(object sender, EventArgs e)
    {
        pictureBox1.Load("http://i.imgur.com/ZkWyBo5.jpg?2");
        pictureBox2.Load("http://i.imgur.com/ZkWyBo5.jpg?2");
        pictureBox3.Load("http://i.imgur.com/ZkWyBo5.jpg?2");
    }

您的代码因未正确使用 using 语句而挂起。请记住,在 using 语句中存在范围。

如果你想使用你的代码:

        private void button1_Click(object sender, EventArgs e)
    {

        var request1 = WebRequest.Create("http://i.imgur.com/ZkWyBo5.jpg?2");
        var request2 = WebRequest.Create("http://i.imgur.com/ZkWyBo5.jpg?2");
        var request3 = WebRequest.Create("http://i.imgur.com/ZkWyBo5.jpg?2");

        using (var response1 = request1.GetResponse())
        {
            using (var stream1 = response1.GetResponseStream())
            {
                pictureBox1.Image = Bitmap.FromStream(stream1);
            }
        }
        using (var response2 = request2.GetResponse())
        {
            using (var stream2 = response2.GetResponseStream())
            {
                pictureBox2.Image = Bitmap.FromStream(stream2);
            }
        }
        using (var response3 = request3.GetResponse())
        {
            using (var stream3 = response3.GetResponseStream())
            {
                pictureBox3.Image = Bitmap.FromStream(stream3);
            }
        }
    }

【讨论】:

  • 是的,完成了。谢谢你。 @WagoL
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-25
  • 2012-12-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多