初涉C#-1-图片显示

Q:我需要每隔n秒显示一张图片,并且这张图片会被其他程序(例如opencv)更新,怎么操作?

A:综合使用Timer控件与PictureBox控件。

下面的例子是以button作为触发控件:


PictureBoxSizeMode的选择参考:http://msdn.microsoft.com/zh-cn/library/system.windows.forms.pictureboxsizemode(v=vs.80).aspx

<span style="font-family: Arial, Helvetica, sans-serif;"></span><pre name="code" class="cpp">partial class Form1
{
<span style="white-space:pre">	</span>//...
<span style="white-space:pre">	</span>public static int timeflag = 0;
        //...
}
 
<span style="font-family: Arial, Helvetica, sans-serif;">private void button1_Click(object sender, EventArgs e)</span>
{
<span style="white-space:pre">	</span>pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;//StretchImage;
        timer1.Enabled = true;
        timer1.Interval = 3000;<span style="white-space:pre">		</span>//第一次显示图片需等待3秒
        timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
<span style="white-space:pre">	</span>timer1.Interval = 100;<span style="white-space:pre">		</span>//每隔100毫秒刷新一次图片
<span style="white-space:pre">	</span>if (0 == timeflag)
<span style="white-space:pre">	</span>{
<span style="white-space:pre">		</span>pictureBox1.Image = Image.FromFile("D:\\dy_code_work\\showwindow\\image-gray.jpg");
                timeflag = 1;
<span style="white-space:pre">	</span>}
<span style="white-space:pre">	</span>else
<span style="white-space:pre">	</span>{
                pictureBox1.Image.Dispose();<span style="white-space:pre">	</span>//此语句是关键!使当前的picturebox控件释放图片文件,即允许其他程序对图片进行修改
                //按需添加下语句:pictureBox2.Image=null;
                timeflag = 0;
 <span style="white-space:pre">	</span>}
}
参考链接:http://blog.sina.com.cn/s/blog_4d9b47930100a3qr.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值