c# 窗体最小化再弹出后读不到下一帧
rtsp方式调用的海康摄像头,读摄像头的时候用了事件
public void Form1_Load(object sender, EventArgs e)
{
Form1.CheckForIllegalCrossThreadCalls = false;
readVideo();
public void readVideo()
{
if (cap != null)
{
Application.Idle += new EventHandler(ProcessFram);
}
.....
}
private void ProcessFram(object sender, EventArgs arg)
{
var frame = cap.QueryFrame();
SetImage(frame);
}
窗体最小化几分钟后,再弹出窗体,就走了下面的if语句,frame成了null,视频窗体就成了白板,再也不能正常显示了
public void SetImage(Mat img)
{
if (img == null)
setImage(pictureBox1, null);
.....
}
一直没有找到解决的方法,曾经考虑过picturebox控件问题、线程问题(界面作为子线程)、视频码流断了等原因,都没有解决,急需大神指导!!!