如何用 VB 实现拖放功能

如何用 VB 实现拖放功能,第1张

拖放是用鼠标拖动一个对象到其它对象的活动。在图形 *** 作过程中,拖放是最常用的功能之一,下面我们来看看怎样用 VB 实现拖放功能。

首先介绍与拖放有关的控件:

1.属性:DragMode 决定拖动 *** 作的初始化是人工方式还是自动方式,DragIcon 确定在拖动过程中显示的培轿指针的图标形状;

2.方法:Drag 开始,结束或取消拖动控件配友肆;

3.事件:MouseDown 事件发生于用户按下鼠标按钮时,DragOver 事件发生于拖动 *** 作完成时,DragDrop 事件发生于拖动 *** 作正在进行时。

然后编写一个小程序,这个程序能实现在窗口中或窗口间拖动图标的功能。建立窗口 Form1 和 Form2,在窗口中都加入 Image1,为它们设置初始显示的图片。键入以下代码(本程序在 VB5.0/6.0,Window95/98/NT4.0 环境下通过):

' Form1 下程序代码为:

Option Explicit

Dim dragx As Single

Dim dragy As Single

Const BEGIN_DRAG=1

Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)

Image1.Picture=Source 'Sourse为被拖动的控件

Form2.Image1.Picture=LoadPicture("")

   Image1.Move(X-dragx),(Y-dragy) ' X,Y为告谨鼠标所在目标窗体或控件的当前坐标

End Sub

Private Sub Form_Load()

Load Form2

Form2.Show 0

End Sub

Private Sub Image1_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)

dragx=X

  dragy=Y

Image1.Drag BEGIN_DRAG'开始拖动 *** 作

Image1.DragIcon = LoadPicture("按下鼠标时想显示的光标")

End Sub

  ' Form2 下程序代码为:

Option Explicit

Dim dragx As Single

Dim dragy As Single

Const BEGIN_DRAG=1

Private Sub Form_DragDrop(Source As Control,X As Single,Y As Single)

Image1.Picture=Source

Form1.Image1.Picture=LoadPicture("")

Image1.Move(X-dragx),(Y-dragy)

End Sub

Private Sub Image1_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)

dragx=X

dragy=Y

Image1.Drag BEGIN_DRAG

Image1.DragIcon=LoadPicture("按下鼠标时想显示的光标")

C#或者wpf写的程序实启蚂现拖拽关键步骤在于:拖出来程序中的图片和鼠标松下时让悄携埋其他程序进行接受(这一点类似于在windows窗口中拖拽文件到程序图标上,让程序打开),

我已经编译好隐歼一个程序,请留下邮箱发送给你.

简单模拟一下,你在码悉一个窗体上画一个文本框迟信乎,复制下坦睁面的代码,

运行后,拖动文本框,就可以看到效果了

Private Sub Form_DragOver(Source As Control, X As Single, Y As Single, State As Integer)

Text1.Left = X

Text1.Top = Y

End Sub

Private Sub Form_Load()

Text1.DragMode = 1

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12479071.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存