我有代码可以将文件拖放到框架内的 wx.FileDropTarget 上。那不是我的问题。
我正在尝试制作一个自定义的“悬停”事件,该事件在外部拖动的文件超过我的框架后 1 秒被调用。不幸的是,当从外部将外部文件拖到框架上时,不会调用 wx.EVT_ENTER_WINDOW。
我想避免不断的光标检查和碰撞检测,因为我的应用程序更像是一个实用程序。(我将让我的应用程序使用小屏幕空间,并在“悬停”在一个小框架上 1 秒后展开)
理想情况下,我想将代码(我的 1 秒计时器)添加到将我的光标从“文件”更改为“移动”光标的事件中,当它击中我的应用程序时。
我只是在学习 wx,远离 vb.NET。在 vb.NET 中有一个“Control.DragEnter”的事件处理程序。这就是我真正想要的。wxpython 等效于 vb.NET "Control.DragEnter"
Private Sub _DragEnter(sender As Object, e As DragEventArgs) Handles Me.DragEnter
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
e.Effect = DragDropEffects.Move
End If
tmrHover = New Timer
AddHandler tmrHover.Tick, AddressOf tmrHover_Tick
tmrHover.Interval = 1000
tmrHover.Start()
End Sub
提前致谢。
-亚历克斯