private void listViewAccessList_DragLeave(object sender, EventArgs e) { Point p1 = Cursor.Position; Point loca = formPictureMovable.pictureBoxElectronicMap.PointToClient(p1); if (loca.X > -5) { if (loca.X < 0) { loca.X = 0; } //取得通道点的实际位置 loca.X = Convert.ToInt32(loca.X / scanle); loca.Y = Convert.ToInt32(loca.Y / scanle); string devpointname = listViewAccessList.SelectedItems[0].Text; listViewAccessList.SelectedItems[0].Remove(); ComponentDoorUnit doorUnit = new ComponentDoorUnit(formPictureMovable.pictureBoxElectronicMap, devpointname, null, loca, scanle); formPictureMovable.pictureBoxElectronicMap.Controls.Add(doorUnit); doorUnit.editModeStripMenuItem_Click += new RealTimeMonitor(this, "192.168.230").remoteControlToolStripMenuItem_Click; doorUnit.saveModeStripMenuItem_Click += new RealTimeMonitor(this, "192.168.230").delAccessPointToolStripMenuItem_Click; doorUnit.EditMode(); //模拟一次鼠标按下事件,便于从通道点列表中拖出后可直接移动通道点 doorUnit.simulateDeviceMouseDown(formPictureMovable.pictureBoxElectronicMap.PointToScreen(doorUnit.Location)); // 将通道点信息保存到数据库中 //accesspoint.saveDevicePoint(electronicmapid); } }
/// <summary> /// 将通道点显示到指定电子地图上 /// </summary> /// <param name="mapid">电子地图ID</param> private void showAllAccessToElectronicMap(int mapid) { //先清除原来电子地图上的通道点 for (int i = formPictureMovable.pictureBoxElectronicMap.Controls.Count - 1; i >= 0; i--) { if (formPictureMovable.pictureBoxElectronicMap.Controls[i] is PictureBox) { formPictureMovable.pictureBoxElectronicMap.Controls.RemoveAt(i); } } // 将通道点显示到指定电子地图上 List <AccessDataBase.Model.DoorUnitInfo> listDoorUnitInfo = bllDoorUnitInfo.GetModelList("ElectronicMapID = " + mapid); foreach (AccessDataBase.Model.DoorUnitInfo doorUintInfo in listDoorUnitInfo) { Point Location = new Point(0, 0); Location.X = doorUintInfo.PositionX.Value; Location.Y = doorUintInfo.PositionY.Value; Image buttonImage = MyImageOperate.getImageByByte(doorUintInfo.StateImageClose); ComponentDoorUnit doorUnit = new ComponentDoorUnit(formPictureMovable.pictureBoxElectronicMap, doorUintInfo.DoorUnitID.ToString(), (Bitmap)buttonImage, Location, 1); formPictureMovable.pictureBoxElectronicMap.Controls.Add(doorUnit); doorUnit.editModeStripMenuItem_Click += new RealTimeMonitor(this, "192.168.1.230").remoteControlToolStripMenuItem_Click; doorUnit.saveModeStripMenuItem_Click += new RealTimeMonitor(this, "192.168.1.230").delAccessPointToolStripMenuItem_Click; doorUnit.SaveMode(); } }