protected override void item_MouseUp(object sender, MouseEventArgs e) { if (mouseStatus == MouseOpStatus.StatusSelect) { clearSelectStatus(); checkSelectStatus(getSelectRect()); mouseStatus = MouseOpStatus.StatusNode; Refresh(); if (this.CountSelectNum() == 0) { EventManager.RaiserEvent(Constant.PropSelectChange, null, null); } else if (this.CountSelectNum() == 1) { EventManager.RaiserEvent(Constant.PropSelectChange, getFirstSelectItem(), null); } } else if (mouseStatus == MouseOpStatus.StatusMove) { mouseStatus = MouseOpStatus.StatusNode; commandManager.AddCommand(new CommandMoveList(this, mouseOpItems)); checkModifyStatus(); Refresh(); } else if (mouseStatus == MouseOpStatus.StatusResize) { setCursorByArena(ClickPosArena.PosCenter); commandManager.AddCommand(new CommandResizeList(this, mouseOpItems)); checkModifyStatus(); mouseStatus = MouseOpStatus.StatusNode; } //ImagePreForm imageForm = new ImagePreForm("e:\\1.png"); //imageForm.Location = new Point((int)pos.X, (int)pos.Y); //imageForm.Show(); //ImageToolTip curToolsTip = new ImageToolTip("e:\\1.png"); ////curToolsTip.Show("fdas", this); ////this.treeView1.ShowNodeToolTips = true; //curToolsTip.SetToolTip(this, "my resource pre view"); }
protected override void item_MouseLeave(object sender, EventArgs e) { mouseStatus = MouseOpStatus.StatusNode; Console.WriteLine("leave"); }
protected override void item_MouseDown(object sender, MouseEventArgs e) { bool isClickControl = (Control.ModifierKeys & Keys.Control) == Keys.Control; bool isClickAlt = (Control.ModifierKeys & Keys.Alt) == Keys.Alt; if (e.Button == MouseButtons.Left) { selectStartPos = selectCurPos = getFixPoint(e.X, e.Y); if (isClickControl) { RenderBase clickItem = getClickItem(selectStartPos, out clickPosArena); if (clickItem != null) { clickItem.isSelect = !clickItem.isSelect; } } else { RenderBase clickItem = getSelectClickItem(selectStartPos, out clickPosArena); if (clickItem == null || isClickAlt) { clickItem = getClickItem(selectStartPos, out clickPosArena); } if (clickItem != null && clickItem.isSelect && clickPosArena != ClickPosArena.PosCenter) { clearSelectStatus(); clickItem.isSelect = true; mouseOpItems.Clear(); mouseOpItems.Add(clickItem); mouseStatus = MouseOpStatus.StatusResize; setCursorByArena(clickPosArena); } else if (clickItem != null) { if (clickItem.isSelect) { mouseOpItems = getSelectItems(); } else { clearSelectStatus(); mouseOpItems.Clear(); clickItem.isSelect = true; mouseOpItems.Add(clickItem); } clickItem.raiseSelctChange(); mouseStatus = MouseOpStatus.StatusMove; } else { clearSelectStatus(); mouseStatus = MouseOpStatus.StatusSelect; } } Invalidate(); recordOriStatus(mouseOpItems); } else if (e.Button == MouseButtons.Right) { ToolStripMenuItem[] formMenuItemList = new ToolStripMenuItem[6]; formMenuItemList[0] = new ToolStripMenuItem("左对齐", null, new EventHandler(this.layoutCallback)); formMenuItemList[0].Tag = LayoutAlignType.LayoutAlign_Left; formMenuItemList[1] = new ToolStripMenuItem("水平居中对齐", null, new EventHandler(this.layoutCallback)); formMenuItemList[1].Tag = LayoutAlignType.LayoutAlign_CenterHor; formMenuItemList[2] = new ToolStripMenuItem("右对齐", null, new EventHandler(this.layoutCallback)); formMenuItemList[2].Tag = LayoutAlignType.LayoutAlign_Right; formMenuItemList[3] = new ToolStripMenuItem("上对齐", null, new EventHandler(this.layoutCallback)); formMenuItemList[3].Tag = LayoutAlignType.LayoutAlign_Top; formMenuItemList[4] = new ToolStripMenuItem("垂直居中对齐", null, new EventHandler(this.layoutCallback)); formMenuItemList[4].Tag = LayoutAlignType.LayoutAlign_CenterVer; formMenuItemList[5] = new ToolStripMenuItem("下对齐", null, new EventHandler(this.layoutCallback)); formMenuItemList[5].Tag = LayoutAlignType.LayoutAlign_Bottom; ContextMenuStrip formMenu = new ContextMenuStrip(); formMenu.Items.AddRange(formMenuItemList); this.ContextMenuStrip = formMenu; //QMenu* layoutMenu = new QMenu(QStringLiteral("布局对齐")); //QAction* layoutLeftAction = layoutMenu->addAction(QStringLiteral("左对齐")); //QAction* layoutCenterHorAction = layoutMenu->addAction(QStringLiteral("水平居中对齐")); //QAction* layoutRightAction = layoutMenu->addAction(QStringLiteral("右对齐")); //layoutMenu->addSeparator(); //QAction* layoutTopAction = layoutMenu->addAction(QStringLiteral("上对齐")); //QAction* layoutCenterVerAction = layoutMenu->addAction(QStringLiteral("垂直居中对齐")); //QAction* layoutBottomAction = layoutMenu->addAction(QStringLiteral("下对齐")); //menu.addMenu(layoutMenu); //layoutMenu->setEnabled(selectItems.size() > 1); //QMenu* orderMenu = new QMenu(QStringLiteral("布局顺序")); //QAction* orderToTop = orderMenu->addAction(QStringLiteral("移至顶层")); //QAction* orderToBottom = orderMenu->addAction(QStringLiteral("移至底层")); } }