我必须在执行DragDrop完整控件的过程中绘制一些东西。 我从控件复制屏幕并进行绘制。 该图像然后用作光标。

问题在于,在光标中生成的图像需要Hospot,它取决于鼠标的位置。 但是,如何在GiveFeedback事件中获得正确的位置? 在我使用Control.MousePosition的版本中,但是图片来回摆动。 这里是事件代码:

Private Sub Panel1_GiveFeedback(sender As Object, e As GiveFeedbackEventArgs) Handles Panel1.GiveFeedback
Dim Pan As Panel = sender
Dim pMouseScreen = Control.MousePosition, pMouseClient = Pan.PointToClient(pMouseScreen)
Dim RPanelClient = Pan.ClientRectangle, RPanelScreen = Pan.RectangleToScreen(RPanelClient)
Using BMP As New Bitmap(RPanelClient.Size.Width, RPanelClient.Size.Height)
  Using Gr = System.Drawing.Graphics.FromImage(BMP)
    Gr.CopyFromScreen(RPanelScreen.Location, Point.Empty, BMP.Size)
    Gr.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
    Using P As New Pen(Color.Black, 5)
      Dim P1 = New Point(0, pMouseClient.Y), P2 = New Point(RPanelClient.Right - 1, pMouseClient.Y)
      Gr.DrawLine(P, P1, P2)
    End Using
    Dim Cur = Cursors.Default   ' 
    Dim Rcursor = New Rectangle(pMouseClient, Cur.Size)
    Cur.Draw(Gr, Rcursor)
  End Using
  e.UseDefaultCursors = False
  Cursor.Current = CreateCursorFromBMP(BMP, pMouseClient)
End Using

结束子

怎么做对?

托尔斯滕的许多感谢和问候

  ask by user3228781 translate from so

本文未有回复,本站智能推荐:

1回复

如何在reactjs中的光标位置附加孩子

我在放入容器后附加一个孩子。但是数据没有附加在光标位置。我如何在 reactjs 中做到这一点
2回复

将鼠标光标更改为HTML中的输入元素

我有各种 HTML 元素,可以通过 Drag'n'Drop 移动。 为了指出用于放置元素(给用户)的有效区域,我正在更改光标外观。 我通过简单地通过 JS 应用 CSS 类来做到这一点,其中包含一个简单的“cursor:xxx”。 这适用于 DIV 和 SPAN。 但是当我尝试使用文本输入或文本区域
2回复

在dragover/drop事件上获得Firefox满意的拖放光标位置

我正在尝试组合一个图像上传器。 我想通过拖放将图像上传到一个可疑的区域。 当我拖动文件时,我看到光标移动 - 除非调用了e.preventDefault()。 在Chrome中,有一个函数document.caretRangeFromPoint(x, y)将坐标转换为光标位置(范围)。
2回复

C#使用光标获取图片框中的像素?[关闭]

很难说出这里问的是什么。 这个问题模棱两可、含糊不清、不完整、过于宽泛或言辞激烈,无法以目前的形式合理回答。 如需帮助澄清此问题以便重新打开它,请访
1回复

C#模拟Windows中的默认拖放功能(拖动过程中的透明图像)

我有一个带有图像单元格(和隐藏的文本单元格)的数据网格,在其中我希望能够将图像从一个单元格拖放到另一个单元格,这是我正在工作的部分,在拖动过程中,我无法使用的是光标和下降。 在拖动时,我希望图像替换光标,类似于在Windows桌面上拖动文件时发生的情况。 当前正在发生的是,光标在我要使用的自
1回复

拖放目标如何在源自外部的拖放中覆盖光标形状?

我有一个MFC窗口,用作放置目标。 根据用户放置某些类型的数据的位置,我想更改光标形状以指示将要发生的动作,只有动作不是移动/复制/链接,而是具有自定义光标的更复杂的动作。 如果有帮助,请举一个例子。 想象一下,我有一个具有2个正方形的窗口,用户可以在其中放置文件:在第一个正方形中,通过
3回复

WPFDragdrop,如何在拖动过程中以视觉方式拒绝掉落?

在Wpf中拖动期间,如何更改鼠标光标(或使用装饰器)以指示droptarget将不接受拖动的项目? 在DragEnter事件期间,我尝试设置e.Effects = DragDropEffects.None ,但是此操作不起作用,我怀疑我误解了该功能的用途。 我尝试使用GiveFeedbac
1回复

游标卡在IE中

在我的拖放实现中,我在整个页面上创建一个“ mask”元素,并对其应用mousemove事件以及需要和相关的CSS cursor属性。 然后,在拖放要拖动的元素时删除mask元素。 这工作得很好,但是在IE中,光标会暂时卡住。 它保持在其设置的蒙版上,但在完成任何操作后都恢复为正常(单击任