/// <summary> /// 刷新相机下拉框,重新获取局域网内所有的热像仪 /// </summary> private void UpdateOnlineDevComboLst() { MagService service = _DataControl.GetService(); //获取相机服务器 uint dev_num = service.GetTerminalList(_LstEnumInfo, MAX_ENUMDEVICE); //获取在线相机 int index = comboBoxOnlineDevice.SelectedIndex; //获取选中的下拉框的索引 uint ip = 0; if (index >= 0 && index < _LstComboIP.Count) { ip = _LstComboIP[index]; } comboBoxOnlineDevice.Items.Clear(); //清空下拉框 //cmbDisplay.Items.Clear(); _LstComboIP.Clear(); //IP地址情况 string sItem = ""; for (int i = 0; i < dev_num; i++) { //创建摄像机名称, if (_LstEnumInfo[i].intUsrIp == service.GetLocalIp()) // { sItem = String.Format("{0}(conn)", _LstEnumInfo[i].sName); //连接 } else if (_LstEnumInfo[i].intUsrIp != 0 && _LstEnumInfo[i].intUsrIp != service.GetLocalIp()) //繁忙 { sItem = String.Format("{0}(busy-{1})", _LstEnumInfo[i].sName, _LstEnumInfo[i].intUsrIp >> 24); } else { sItem = _LstEnumInfo[i].sName;//位置 } comboBoxOnlineDevice.Items.Add(sItem); _LstComboIP.Add(_LstEnumInfo[i].intCamIp); if (_LstEnumInfo[i].intCamIp == ip) { comboBoxOnlineDevice.SelectedIndex = i; } } int displayCount = Globals.GetMainFrm().GetFormDisplayCount();//获取有多少个摄像头 // cmbSelect(comboBoxOnlineDevice); }
private void UpdateOnlineDevComboLst() { MagService service = _DataControl.GetService(); uint dev_num = service.GetTerminalList(_LstEnumInfo, MAX_ENUMDEVICE); int index = comboBoxOnlineDevice.SelectedIndex; uint ip = 0; if (index >= 0 && index < _LstComboIP.Count) { ip = _LstComboIP[index]; } comboBoxOnlineDevice.Items.Clear(); _LstComboIP.Clear(); string sItem = ""; for (int i = 0; i < dev_num; i++) { if (_LstEnumInfo[i].intUsrIp == service.GetLocalIp()) { sItem = String.Format("{0}(conn)", _LstEnumInfo[i].sName); } else if (_LstEnumInfo[i].intUsrIp != 0 && _LstEnumInfo[i].intUsrIp != service.GetLocalIp()) { sItem = String.Format("{0}(busy-{1})", _LstEnumInfo[i].sName, _LstEnumInfo[i].intUsrIp >> 24); } else { sItem = _LstEnumInfo[i].sName; } comboBoxOnlineDevice.Items.Add(sItem); _LstComboIP.Add(_LstEnumInfo[i].intCamIp); if (_LstEnumInfo[i].intCamIp == ip) { comboBoxOnlineDevice.SelectedIndex = i; } } if (comboBoxOnlineDevice.Items.Count == 0) { comboBoxOnlineDevice.SelectedIndex = -1; } else if (comboBoxOnlineDevice.SelectedIndex < 0) { comboBoxOnlineDevice.SelectedIndex = 0; } }
void threadfthod() { if (!GroupSDK.MAG_IsChannelAvailable(0)) { if (GroupSDK.MAG_NewChannel(0)) { if (GroupSDK.MAG_Initialize(0, IntPtr.Zero)) { updateListBox("初始化成功"); updateListBox("创建通道0成功"); if (GroupSDK.MAG_IsUsingStaticIp()) { updateListBox("使用静态IP"); uint loaclIP = magService.GetLocalIp(); updateListBox("获取到本机IP" + loaclIP); if (magService.StartDHCPServer()) { updateListBox("开启静态连接"); uint dev_num = 0; if (magService.EnumCameras()) { updateListBox("枚举摄像机"); Thread.Sleep(500); dev_num = magService.GetTerminalList(_LstEnumInfo, MAX_ENUMDEVICE); updateListBox("一共有" + dev_num + "摄像机,集合长度" + _LstEnumInfo[0].sName); if (mag.LinkCamera(loaclIP, 50)) { updateListBox("连接成功"); } else { updateListBox("连接false"); } } } } } //if (mag.LinkCamera("192.168.1.33", 50000)) //{ // updateListBox("连接成功"); //} //else //{ // updateListBox("连接失败"); //} } } }
private void buttonLink_Click(object sender, EventArgs e) { int index = comboBoxOnlineDevice.SelectedIndex; if (index < 0) { return; } MagService service = _DataControl.GetService(); //创建 uint dev_num = service.GetTerminalList(_LstEnumInfo, MAX_ENUMDEVICE); //获取在线相机 ConnectionCamer(_LstEnumInfo[index].intCamIp); RefreshOnlineDevice(); }
private void buttonLink_Click(object sender, EventArgs e) { int index = comboBoxOnlineDevice.SelectedIndex; if (index < 0) { return; } MagService service = _DataControl.GetService(); uint dev_num = service.GetTerminalList(_LstEnumInfo, MAX_ENUMDEVICE); if (_DataControl.IsLinkedByMyself(_LstEnumInfo[index].intCamIp)) { return; } else if (_DataControl.IsLinkedByOthers(_LstEnumInfo[index].intUsrIp)) { DialogResult result = MessageBox.Show("相机正与其它终端连接,确信要抢占吗?", "连接相机", MessageBoxButtons.YesNo); if (result != DialogResult.Yes) { return; } } if (_DataControl.IsInvadedByOthers(_LstEnumInfo[index].intUsrIp)) { DislinkCamera(_LstEnumInfo[index].intCamIp); } FormDisplay display = _DataControl.GetCurrDisplayForm(); if (display != null) { MagDevice device = display.GetDateDisplay().GetDevice(); if (device.LinkCamera(_LstEnumInfo[index].intCamIp, 2000)) { DataDisplay.CurrSelectedWndIndex = display.GetDateDisplay().WndIndex;//更新选中框 Globals.GetMainFrm().GetFormDisplayBG().Invalidate(false); } } RefreshOnlineDevice(); }
private void buttonDislink_Click(object sender, EventArgs e) { int index = comboBoxOnlineDevice.SelectedIndex; if (index < 0) { return; } MagService service = _DataControl.GetService(); uint dev_num = service.GetTerminalList(_LstEnumInfo, MAX_ENUMDEVICE); DislinkCamera(_LstEnumInfo[index].intCamIp); Thread.Sleep(300); RefreshOnlineDevice(); }
private void buttonPlay_Click(object sender, EventArgs e) { int index = comboBoxOnlineDevice.SelectedIndex; if (index < 0) { return; } MagService service = _DataControl.GetService(); uint dev_num = service.GetTerminalList(_LstEnumInfo, MAX_ENUMDEVICE); FormDisplay frmDisplay = _DataControl.GetBindedDisplayForm(_LstEnumInfo[index].intCamIp); if (frmDisplay != null) { frmDisplay.GetDateDisplay().Play(); } }
private void buttonPlay_Click(object sender, EventArgs e) { int index = comboBoxOnlineDevice.SelectedIndex; if (index < 0) { return; } MagService service = _DataControl.GetService(); uint dev_num = service.GetTerminalList(_LstEnumInfo, MAX_ENUMDEVICE); for (int i = 0; i < comboBoxOnlineDevice.Items.Count; i++) { FormDisplay frmDisplay = _DataControl.GetBindedDisplayForm(_LstEnumInfo[i].intCamIp); //选择已经绑定的IP的显示窗口 if (frmDisplay != null) { frmDisplay.GetDateDisplay().Play(); ChangeBtnCursor(2); } } }
private void buttonStop_Click(object sender, EventArgs e) { int index = comboBoxOnlineDevice.SelectedIndex; if (index < 0) { return; } DialogResult MsgBoxResult = MessageBox.Show("确定要停止播放且停止采集热点?", //对话框的显示内容 "操作提示", //对话框的标题 MessageBoxButtons.YesNo, //定义对话框的按钮,这里定义了YSE和NO两个按钮 MessageBoxIcon.Question, //定义对话框内的图表式样,这里是一个黄色三角型内加一个感叹号 MessageBoxDefaultButton.Button2); //定义对话框的按钮式样 if (MsgBoxResult == DialogResult.Yes) { MagService service = _DataControl.GetService(); uint dev_num = service.GetTerminalList(_LstEnumInfo, MAX_ENUMDEVICE); for (int i = 0; i < comboBoxOnlineDevice.Items.Count; i++) { FormDisplay frmDisplay = _DataControl.GetBindedDisplayForm(_LstEnumInfo[i].intCamIp); if (frmDisplay == null) { continue; } frmDisplay.Stop = false; frmDisplay.GetDateDisplay().GetDevice().StopProcessImage(); frmDisplay.Invalidate(false); isThreadRun = false; FormMain.GetOPCTaskInfo("线程停止!"); FormMain.GetOPCTaskInfo("视频停止播放,热点信息停止采集,任务停止发送!"); ChangeBtnCursor(1); } } }