【实例说明】 在程序运行时,要动态改变图像的位置有几种方法。本例讲解的是用鼠标拖曳图像的方法改变图像的位置。运行程序,单击窗体上的图片并拖曳鼠标,图像将随鼠标移动,并且窗体上显示图片的当前位置坐标。
【编程思路】 在鼠标按下时,运用Drag方法来实现拖曳图像的功能。下面是Drag的语法及参数:
语法:object.Drag action。
参数:action常数或数值,可选的。
0:取消拖动操作;
1:开始拖动object;
2:结束拖放object。
【设计步骤】
1.新建一个标准工程,创建一个新窗体,默认名为Form1。
2.在窗体上放置一个CommandButton控件、一个Image控件(加载图片)和一个Label控件。
3.源程序 [素材源程序下载]
Dim x1 As Single
Dim y1 As Single
'开始拖动
Const begin_drag = 1
'退出
Private Sub Command1_Click()
Unload Me
End Sub
'初始化
Private Sub Form_Activate()
Label1.Caption = "图片当前位置:(" & Image1.Left & "," & Image1.Top & ")"
End Sub
'拖动鼠标
Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
Image1.Move (X - x1), (Y - y1)
End Sub
Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
x1 = X
y1 = Y
'开始拖动
Image1.Drag begin_drag
Label1.Caption = "图片当前位置:(" & Image1.Left & "," & Image1.Top & ")"
End Sub
|