⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmmain.cs

📁 界面美观,模块功能清晰,连接数据库,适合初学者
💻 CS
📖 第 1 页 / 共 2 页
字号:
                    VideoOperate.VCASetVidCapFrameRate(0, 25, false);
                    VideoOperate.VCASetVidCapSize(0, 320, 240);
                    VideoOperate.VCASetXVIDQuality(0, 10, 3);
                    VideoOperate.VCASetXVIDCompressMode(0, VideoOperate.COMPRESSMODE.XVID_VBR_MODE);
                    VideoOperate.VCAStartVideoCapture(0, VideoOperate.CAPMODEL.CAP_MPEG4_STREAM, VideoOperate.MP4MODEL.MPEG4_AVIFILE_CALLBACK, sfDialog.FileName);
                }
            }
            else if (btnVideo.Text == "停止录像")
            {
                btnVideo.Text = "录像";
                VideoOperate.VCAStopVideoCapture(0);
            }
        }
        //回放
        private void btnPlay_Click(object sender, EventArgs e)
        {
            frmPlay frmpaly = new frmPlay();
            frmpaly.ShowDialog();
        }
        //快照
        private void btnSnapShots_Click(object sender, EventArgs e)
        {
            if (rbtnBMP.Checked)
            {
                VideoOperate.VCASaveAsBmpFile(0, Application.StartupPath.Substring(0, Application.StartupPath.LastIndexOf("\\")).Substring(0, Application.StartupPath.Substring(0, Application.StartupPath.LastIndexOf("\\")).LastIndexOf("\\")) + "\\Photo\\" + DateTime.Now.ToFileTime() + ".bmp");
            }
            else
            {
                VideoOperate.VCASaveAsJpegFile(0, Application.StartupPath.Substring(0, Application.StartupPath.LastIndexOf("\\")).Substring(0, Application.StartupPath.Substring(0, Application.StartupPath.LastIndexOf("\\")).LastIndexOf("\\")) + "\\Photo\\" + DateTime.Now.ToFileTime() + ".jpg", 100);
            }
        }
        //开始自动监控
        private void btnAutoMonitor_Click(object sender, EventArgs e)
        {
            if (btnAutoMonitor.Text == "开始")
            {
                if (rbtnWideWatch.Checked)
                {
                    messagesend = pelcod.CameraTilt(addressin, PelcoD.Tilt.Up, speedin);
                    serialPort.Open();
                    serialPort.Write(messagesend, 0, 7);
                    serialPort.Close();
                    Thread.Sleep(2000);
                    messagesend = pelcod.CameraPan(addressin, PelcoD.Pan.Left, speedin);
                    serialPort.Open();
                    serialPort.Write(messagesend, 0, 7);
                    serialPort.Close();
                    Thread.Sleep(2000);
                    messagesend = pelcod.CameraTilt(addressin, PelcoD.Tilt.Down, speedin);
                    serialPort.Open();
                    serialPort.Write(messagesend, 0, 7);
                    serialPort.Close();
                    Thread.Sleep(2000);
                    messagesend = pelcod.CameraPan(addressin, PelcoD.Pan.Right, speedin);
                    serialPort.Open();
                    serialPort.Write(messagesend, 0, 7);
                    serialPort.Close();
                }
                else if (rbtnVerticalWatch.Checked)
                {
                    messagesend = pelcod.CameraTilt(addressin, PelcoD.Tilt.Up, speedin);
                    serialPort.Open();
                    serialPort.Write(messagesend, 0, 7);
                    serialPort.Close();
                    Thread.Sleep(2000);
                    messagesend = pelcod.CameraTilt(addressin, PelcoD.Tilt.Down, speedin);
                    serialPort.Open();
                    serialPort.Write(messagesend, 0, 7);
                    serialPort.Close();
                }
                else
                {
                    messagesend = pelcod.CameraPan(addressin, PelcoD.Pan.Left, speedin);
                    serialPort.Open();
                    serialPort.Write(messagesend, 0, 7);
                    serialPort.Close();
                    Thread.Sleep(2000);
                    messagesend = pelcod.CameraPan(addressin, PelcoD.Pan.Right, speedin);
                    serialPort.Open();
                    serialPort.Write(messagesend, 0, 7);
                    serialPort.Close();
                }
                btnAutoMonitor.Text = "停止";
            }
            else
            {
                stopMove();
                btnAutoMonitor.Text = "开始";
            }
        }
        //停止监控
        private void btnStop_Click(object sender, EventArgs e)
        {
            if (btnStop.Text == "停止")
            {
                string strDPath = Application.StartupPath;
                string strPath = strDPath.Substring(0, strDPath.LastIndexOf("\\")).Substring(0, strDPath.Substring(0, strDPath.LastIndexOf("\\")).LastIndexOf("\\")) + "\\Image\\主页面\\主界面图片.bmp";
                plVideo1.BackgroundImage = System.Drawing.Image.FromFile(strPath);
                VideoOperate.VCAUnInitSdk();
                btnStop.Text = "开始";
            }
            else if (btnStop.Text == "开始")
            {
                plVideo1.BackgroundImage = null;
                startMonitor();
                btnStop.Text = "停止";
            }
        }
        //打开软件注册窗体
        private void btnReg_Click(object sender, EventArgs e)
        {
            frmRegister frmregister = new frmRegister();
            frmregister.Show();
            this.Hide();
        }

        #region  释放鼠标时,视频监控停止移动
        private void btnUp_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnDown_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnLeft_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnRight_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnAHighlghts_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnCHighlghts_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnAFocus_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnCFocus_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnAAperture_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnCAperture_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnAWipers_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        private void btnCWipers_MouseUp(object sender, MouseEventArgs e)
        {
            stopMove();
        }
        #endregion

        //关闭主窗体时,退出应用程序
        private void frmMain_FormClosing(object sender, FormClosingEventArgs e)
        {
            Application.Exit();
        }
        //开始监控
        protected void startMonitor()   
        {
            if (VideoOperate.VCAInitSdk(this.Handle, VideoOperate.DISPLAYTRANSTYPE.PCI_MEMORY_VIDEOMEMORY, false))
            {
                m_dwDevNum = VideoOperate.VCAGetDevNum();
                if (m_dwDevNum == 0)
                {
                    MessageBox.Show("VC404卡驱动程序没有安装");
                }
                else
                {
                    for (int i = 0; i < m_dwDevNum; i++)
                    {
                        VideoOperate.VCAOpenDevice(i, plVideo1.Handle);
                        VideoOperate.VCAStartVideoPreview(i);
                    }
                }
            }
        }
        //停止移动
        protected void stopMove()
        {
            messagesend = pelcod.CameraStop(addressin);
            serialPort.Open();
            serialPort.Write(messagesend, 0, 7);
            serialPort.Close();
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -