首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

怎么在VB程序运行后,将一个命令钮任意拖到某个位置

2012-01-21 
如何在VB程序运行后,将一个命令钮任意拖到某个位置--------------[解决办法]设置Command1的dragmode为0(手

如何在VB程序运行后,将一个命令钮任意拖到某个位置
--------------

[解决办法]
设置Command1的dragmode为0(手动),并定义两个变量用于开始拖动时的鼠标位置:
Dim cx as Long, cy as Long
在Command1的mousedown事件中记录当前鼠标位置并开始拖动:
Command1.Drag 1
cx = X
cy = Y
之所以将Command1的DragMode改为手动,是因为在自动模式下是不会触发Command1的MouseDown事件的,当然也就无法记录原始的鼠标位置了。

代码如下:
Option Explicit
Dim cx As Long, cy As Long

Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Command1.Drag 1
cx = X
cy = Y
End Sub

Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
Source.Move X - cx, Y - cy
End Sub

热点排行