我需要在Windows窗体应用程序中定期显示一些图像。图像的来源是固定的URL链接。链接中的图像每天自动更新。我需要的是让我的应用程序能够自动每天刷新图像。如何在C++/CLI
或C#
中执行此操作?我还想提一下,我必须通过代理IP&端口以访问Internet(链接)。
答案 0 :(得分:1)
只需使用HttpWebRequest或WebClient从网址下载图片即可。然后以任何你想要的方式使用它。两者都具有与Proxy相关的属性。相应地设置,你很高兴
答案 1 :(得分:1)
假设它是一个图片框:
private void PopulatePictureBox()
{
ImageList images = new ImageList();
images.Images.Add(LoadImage("http://www.website.com/123.jpg"));
picbox.Image = imagelst.Images[0];
}
假设它是一个listView控件:
private void PopulateListView()
{
ImageList images = new ImageList();
images.Images.Add(LoadImage("http://www.website.com/123.jpg"));
images.Images.Add(LoadImage("http://www.website.com/456.jpg"));
listView1.SmallImageList = images;
listView1.Items.Add("An item", 0);
listView1.Items.Add("Another item item", 1);
}
这是从网络上获取图像的功能:
private Image LoadImage(string url)
{
System.Net.WebRequest request =
System.Net.WebRequest.Create(url);
System.Net.WebResponse response = request.GetResponse();
System.IO.Stream responseStream =
response.GetResponseStream();
Bitmap bmp = new Bitmap(responseStream);
responseStream.Dispose();
return bmp;
}
不确定您是否希望将图片保存到磁盘,我会将该选项留给您。
答案 2 :(得分:0)
您可以实施一个保存上次刷新日期的例程,并将其每小时与当前时间进行一次比较,例如:
current.subtract(lastUpdated).Days > 1