public HouseCell(CellPos coord,Point ltCorner, Size size, Color bkgColor,Color borderColor) { CellCoord = coord; ltCornerPos = ltCorner; CellSize = size; ForeColor = bkgColor; BorderColor = borderColor; _CellRect = new Rectangle(ltCorner,size); CellStatus = CellStoreStatus.CELL_EMPTY; }
public CellEventArgs(CellPos cellCoord) { CurCellCoord = cellCoord; }
/// <summary> /// 触发仓位信息弹出显示事件 /// </summary> /// <param name="pos"></param> private void OnCellPopupDisp(CellPos pos) { if(eventSwitchMode != null) { CellEventArgs eArgs = new CellEventArgs(pos); eventCellPopupDisp.Invoke(this, eArgs); } }
/// <summary> /// 触发入库请求查询事件 /// </summary> /// <param name="pos"></param> private void OnHouseoutRequire(CellPos pos) { if(eventHouseoutRequire != null) { CellEventArgs eArgs = new CellEventArgs(pos); eventHouseoutRequire.Invoke(this, eArgs); } }
/// <summary> /// 添加手动出库指令 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonHouseoutAdd_Click(object sender, EventArgs e) { int L = int.Parse(this.comboBoxLayerlist.Text); if (L < 1) { L = 1; this.comboBoxLayerlist.Text = L.ToString(); } if (L > this.wareHouseControl1.LayerCount) { L = this.wareHouseControl1.LayerCount; this.comboBoxLayerlist.Text = L.ToString(); } int R = int.Parse(this.comboBoxRowlist.Text); if (R < 1) { R = 1; this.comboBoxRowlist.Text = R.ToString(); } if (R > this.wareHouseControl1.ChannelCount * 2) { R = this.wareHouseControl1.ChannelCount * 2; this.comboBoxRowlist.Text = R.ToString(); } int C = int.Parse(this.comboBoxColumnList.Text);// (int)this.comboBoxColumnList.SelectedItem; if (C < 1) { C = 1; this.comboBoxColumnList.Text = C.ToString(); } if (C > this.wareHouseControl1.ColumnCount) { C = this.wareHouseControl1.ColumnCount; this.comboBoxColumnList.Text = C.ToString(); } CellPos pos = new CellPos(L, R, C); OnHouseoutRequire(pos); }
/// <summary> /// 手动出库列表应用 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonHouseoutListApply_Click(object sender, EventArgs e) { List<CellPos> cellList = new List<CellPos>(); foreach (DataRow row in _dataTableHouseout.Rows) { CellPos pos = new CellPos((int)row["层号"], (int)row["行号"], (int)row["列号"]); cellList.Add(pos); } OnHouseoutListApply(cellList); }
/// <summary> /// 仓位信息弹出式显示 /// </summary> /// <param name="cellInfo"></param> public void PopupDispCellinfo(CellPos pos,CellDispInfo cellInfo) { this.wareHouseControl1.ShowCellinfoTip(pos, cellInfo.titleText, cellInfo.contentText); }
/// <summary> /// 查看指定单元格 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonCellView_Click(object sender, EventArgs e) { int L = int.Parse(this.comboBoxLayerlist.Text); if (L < 1) { L = 1; this.comboBoxLayerlist.Text = L.ToString(); } if (L > this.wareHouseControl1.LayerCount) { L = this.wareHouseControl1.LayerCount; this.comboBoxLayerlist.Text = L.ToString(); } int R = int.Parse(this.comboBoxRowlist.Text); if (R < 1) { R = 1; this.comboBoxRowlist.Text = R.ToString(); } if (R > this.wareHouseControl1.ChannelCount * 2) { R = this.wareHouseControl1.ChannelCount * 2; this.comboBoxRowlist.Text = R.ToString(); } int C = int.Parse(this.comboBoxColumnList.Text);// (int)this.comboBoxColumnList.SelectedItem; if (C < 1) { C = 1; this.comboBoxColumnList.Text = C.ToString(); } if (C > this.wareHouseControl1.ColumnCount) { C = this.wareHouseControl1.ColumnCount; this.comboBoxColumnList.Text = C.ToString(); } // wareHouseControl1_DisplayCell(new CellPos(L, R, C)); CellPos pos = new CellPos(L, R, C); this.wareHouseControl1.CaptureCell(pos); OnCellPopupDisp(pos); }
/// <summary> /// 释放单元格 /// </summary> /// <param name="cellCoord"></param> private void ReleaseCell(CellPos cellCoord) { HouseCell cell = _LayersList[cellCoord.L - 1].RowsList[cellCoord.R - 1].CellsList[cellCoord.C - 1]; if (cell != null) { SetCellCaptureStatus(cell, CellMouseStatus.MOUSE_LEAVE); } }
/// <summary> /// 弹出显示仓位信息 /// </summary> /// <param name="pos"></param> /// <param name="title"></param> /// <param name="text"></param> public void ShowCellinfoTip(CellPos pos, string title, string text) { HouseCell cell = _LayersList[pos.L - 1].RowsList[pos.R - 1].CellsList[pos.C - 1]; int x = (int)(cell.ltCornerPos.X *zoomScale / 100.0f) + this.panelWareCells.AutoScrollPosition.X; int y = (int)((cell.ltCornerPos.Y + cell.CellSize.Height * 2) * zoomScale / 100.0f )+ this.panelWareCells.AutoScrollPosition.Y; this.toolTip1.ToolTipTitle = title; this.toolTip1.Show(text, this.panelWareCells, x, y); }
/// <summary> /// 得到仓位中心相对于控件原点的位置 /// </summary> /// <param name="pos"></param> /// <returns></returns> public Point GetCellPosition(CellPos pos) { Point cellPosition = new Point(); cellPosition.X = _CanvasLeftWidth + _CellColumnWidth * pos.C - CellColumnWidth / 2 + AutoScrollPosition.X; cellPosition.Y = _CanvasTopHeight + _CellRowHeight * pos.R - CellRowHeight / 2 + AutoScrollPosition.Y; return cellPosition; }
/// <summary> /// 捕获货架单元格 /// </summary> /// <param name="cellCoord"></param> public void CaptureCell(CellPos cellCoord) { if (_LastCaptureCell != null) { SetCellCaptureStatus(_LastCaptureCell, CellMouseStatus.MOUSE_LEAVE); _LastCaptureCell = null; } HouseCell cell = _LayersList[cellCoord.L - 1].RowsList[cellCoord.R - 1].CellsList[cellCoord.C - 1]; if (cell != null) { SetCellCaptureStatus(cell, CellMouseStatus.MOUSE_ENTER); _LastCaptureCell = cell; } }
//public readonly MouseEventArgs mouseArgs; public CellMouseEventArgs(CellPos cellCoord) { CurCellCoord = cellCoord; // mouseArgs = mouse; }