111,097
社区成员




namespace Interface
{
// 对主线程的setFrameViewImage进行委托
delegate void deleteFrameView(IntPtr pFrame);
class RetriveFrameThread
{
private IntPtr pframe;
private RegisterForm m_Form;
private deleteFrameView dispFrameView;
public RetriveFrameThread(Form form)
{
pframe = IntPtr.Zero;
m_Form = form as RegisterForm;
if (form != null)
{
dispFrameView = new deleteFrameView(m_Form.setFrameViewImage);
}
}
public void run()
{
while (true)
{
if (CameraDll.retriveFrame(ref pframe) == 0)
{
//dispFrameView(pframe); 直接使用delegate
m_Form.Invoke(dispFrameView, pframe); 使用窗体的invoke
}
Thread.Sleep(10);
}
}
}
}