コード例 #1
0
        public bool MouseMoveFloatItem(MouseEventArgs e)
        {
            bool Result = true;

            if ((e.Button == MouseButtons.Left) && (FMouseDownIndex >= 0))
            {
                HCCustomFloatItem vFloatItem = FFloatItems[FMouseDownIndex];
                MouseEventArgs    vMouseArgs = new MouseEventArgs(e.Button, e.Clicks,
                                                                  e.X - vFloatItem.Left, e.Y - vFloatItem.Top, e.Delta);
                vFloatItem.MouseMove(vMouseArgs);

                if (!vFloatItem.Resizing)
                {
                    vFloatItem.Left = vFloatItem.Left + e.X - FMouseX;
                    vFloatItem.Top  = vFloatItem.Top + e.Y - FMouseY;

                    FMouseX = e.X;
                    FMouseY = e.Y;
                }

                Style.UpdateInfoRePaint();
            }
            else  // 普通鼠标移动
            {
                int vItemIndex = GetFloatItemAt(e.X, e.Y);
                if (FMouseMoveIndex != vItemIndex)
                {
                    if (FMouseMoveIndex >= 0)
                    {
                        FFloatItems[FMouseMoveIndex].MouseLeave();
                    }

                    FMouseMoveIndex = vItemIndex;
                    if (FMouseMoveIndex >= 0)
                    {
                        FFloatItems[FMouseMoveIndex].MouseEnter();
                    }
                }

                if (vItemIndex >= 0)
                {
                    HCCustomFloatItem vFloatItem = FFloatItems[vItemIndex];
                    MouseEventArgs    vMouseArgs = new MouseEventArgs(e.Button, e.Clicks,
                                                                      e.X - vFloatItem.Left, e.Y - vFloatItem.Top, e.Delta);
                    vFloatItem.MouseMove(vMouseArgs);
                }
                else
                {
                    Result = false;
                }
            }

            return(Result);
        }
コード例 #2
0
        public bool MouseMoveFloatItem(MouseEventArgs e)
        {
            bool vResult = false;

            if (e.Button == MouseButtons.Left)
            {
                if (this.ReadOnly)
                {
                    return(vResult);
                }

                if (FMouseDownIndex >= 0)
                {
                    HCCustomFloatItem vFloatItem = FFloatItems[FMouseDownIndex];
                    MouseEventArgs    vMouseArgs = new MouseEventArgs(e.Button, e.Clicks,
                                                                      e.X - vFloatItem.Left, e.Y - vFloatItem.Top, e.Delta);
                    vResult = vFloatItem.MouseMove(vMouseArgs);

                    if (vResult)
                    {
                        Style.UpdateInfoRePaint();
                    }
                }
            }
            else  // 普通鼠标移动
            {
                int vItemIndex = GetFloatItemAt(e.X, e.Y);
                if (FMouseMoveIndex != vItemIndex)
                {
                    if (FMouseMoveIndex >= 0)
                    {
                        FFloatItems[FMouseMoveIndex].MouseLeave();
                    }

                    FMouseMoveIndex = vItemIndex;
                    if (FMouseMoveIndex >= 0)
                    {
                        FFloatItems[FMouseMoveIndex].MouseEnter();
                    }
                }

                if (vItemIndex >= 0)
                {
                    HCCustomFloatItem vFloatItem = FFloatItems[vItemIndex];
                    MouseEventArgs    vMouseArgs = new MouseEventArgs(e.Button, e.Clicks,
                                                                      e.X - vFloatItem.Left, e.Y - vFloatItem.Top, e.Delta);
                    vResult = vFloatItem.MouseMove(vMouseArgs);
                }
            }

            return(vResult);
        }