Example #1
0
 internal void OnMouseUp(object sender, MouseEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         Point d = MarkedPicture.ShowToPos(e.Location);
         SetFocus(FindMouseOnRect(d));
     }
 }
Example #2
0
        /// <summary>
        /// 根据鼠标位置改变框位置或尺寸.
        /// </summary>
        /// <param name="me"></param>
        public virtual void ChangeRect(Point me)
        {
            Point e = MarkedPicture.ShowToPos(me);

            ChangeSelf(e);

            if (Parent != null)
            {
                this.ShrinkToRange(Parent);
            }
            this.ExpandToIncludeSubs(MarkedPicture.ChangingEdge);
            return;
        }
Example #3
0
        internal void OnMouseDown(object sender, MouseEventArgs e)
        {
            Point de = MarkedPicture.ShowToPos(e.Location);

            if (e.Button == MouseButtons.Left)
            {
                WinBase mf = this.FindMouseOnRect(de);
                if (mf == CurFocus)
                {
                    MarkedPicture.IsChangingWinNow = true;
                    if (CurFocus != TheBoard)
                    {
                        //设置将要修改哪个边。
                        MarkedPicture.ChangingEdge = CurFocus.ShowShape.MouseOverWhere(de);
                    }
                    else
                    {
                        //单板只能修改显示位置
                        theMarkPicture.Cursor      = Cursors.NoMove2D;//移动中心位置
                        MarkedPicture.ChangingEdge = Direction.center;
                    }
                }
                else if (CurFocus is Board)
                {
                    //单板只能修改显示位置
                    theMarkPicture.SetDownDelt(e.Location);
                    theMarkPicture.Cursor          = Cursors.NoMove2D;
                    MarkedPicture.IsChangingWinNow = true;
                    MarkedPicture.ChangingEdge     = Direction.center;
                }
            }
            //else if (e.Button == MouseButtons.Right)
            //{
            //    //***** 右键按下时移动板显示位置。
            //    SetFocus(TheBoard);
            //    theMarkPicture.Cursor = Cursors.NoMove2D;
            //}
        }
Example #4
0
 /// <summary>
 /// 将图形在板中坐标转化为在MarkedPicture中的坐标;
 /// </summary>
 /// <returns></returns>
 internal override Point ChangeToShowPoint()
 {
     return(new Point(MarkedPicture.PosToShowX(X), MarkedPicture.PosToShowY(Y)));
 }