예제 #1
0
 private void ckModel_CheckedChanged(object sender, EventArgs e)
 {
     if (ckModel.Checked)
     {
         cJiaPicture.Visible = false;
         homepanel.Visible   = false;
         ckPage.Checked      = true;
         this.OpenCapture();
         btnDelete.Enabled = false;
         btnSave.Enabled   = false;
     }
     else
     {
         ckPage.Checked      = false;
         cJiaPicture.Visible = true;
         ImagesInputView.SendMessage(this.hHwnd, 0x40b, 0, 0);//停止视频注销视频句柄
         ImagesInputView.DestroyWindow(this.hHwnd);
         if (isPicInput())
         {
             btnDelete.Enabled = false;
             btnSave.Enabled   = false;
         }
         else
         {
             btnDelete.Enabled = true;
             btnSave.Enabled   = true;
         }
     }
 }
예제 #2
0
        private void OpenCapture()
        {
            int    intWidth  = this.pnlCamera.Width;
            int    intHeight = this.pnlCamera.Height;
            int    intDevice = 0;
            string refDevice = intDevice.ToString();

            //创建视频窗口并得到句柄
            hHwnd = ImagesInputView.capCreateCaptureWindowA(ref refDevice, 1342177280, 0, 0, 640, 480, this.pnlCamera.Handle.ToInt32(), 0);
            if (ImagesInputView.SendMessage(hHwnd, 0x40a, intDevice, 0) > 0)
            {
                ImagesInputView.SendMessage(this.hHwnd, 0x435, -1, 0);
                ImagesInputView.SendMessage(this.hHwnd, 0x434, 0x42, 0);
                ImagesInputView.SendMessage(this.hHwnd, 0x432, -1, 0);
                ImagesInputView.SetWindowPos(this.hHwnd, 1, 0, 0, intWidth, intHeight, 6);
            }
            else
            {
                ImagesInputView.DestroyWindow(this.hHwnd);
            }
        }