永发信息网

vb在窗体中,按钮可以拖动,放下鼠标按钮就放在那里,怎么实现?

答案:4  悬赏:30  手机版
解决时间 2021-01-09 08:02
vb在窗体中,按钮可以拖动,放下鼠标按钮就放在那里,怎么实现?
最佳答案
***版本一***左键单击后可以移动,再次单击停止移动:

Dim bMove As Boolean '判断可不可以移动
Dim oldX!, oldY! '!是Single的缩写

Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If bMove Then
Command1.Left = Command1.Left - oldX + X
Command1.Top = Command1.Top - oldY + Y
End If
End Sub

Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then '1就是鼠标左键
bMove = Not bMove
oldX = X
oldY = Y
End If
End Sub

***版本二***左键按下时可以拖动:

Dim oldX!, oldY! '!是Single的缩写

Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then '1就是鼠标左键
oldX = X
oldY = Y
End If
End Sub

Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
Command1.Left = Command1.Left - oldX + X
Command1.Top = Command1.Top - oldY + Y
End If
End Sub
全部回答
如果,怎样~
SendMessageA(按钮的句柄,161.2.0)这个事API命令,在易语言里直接按钮.发送信息(161.2.0)就可以实现的。
在按钮的鼠标按下事件里写...if button = 1 then if 按钮.Eanble = True then 按钮.Eanble = False 按钮.Left = X: 按钮.Top = Y else 按钮.Eanble = True end ifend if
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
荀以天下之大,而从六国之故事,是又在六国下矣
3岁娃晚上2到3点让大人必须把腿压着是什么原
燕窝和什么一起炖好
求个成语
跟男朋友在一起3年多了 跟男朋友分手
为什么微信视频耗电那么快
从我国能源战略安全角度论述海外石油开发的重
什么是扬压力
美国第一艘运载火箭是()
文化部周边环境怎么样?生活便利吗?
剑灵弯钩峡谷详细攻略 从细节教大家怎么打
以妈妈您听我说写一篇诗歌,速求,十万火急
老牛上坡是歇后语吗?
王记家常菜馆地址有知道的么?有点事想过去
上外高翻的《翻译理论与文化知识》怎么准备,
推荐资讯
为什么安妮海瑟薇知道自己的哥哥是同性恋后就
各种钢材的硬度
职务发明人设计人享有哪些权利?
西安到天津的K214次卧铺,或软座火车票,最好是
广州市天河区天河路属于什么街道
酷派大神f2的sim卡是什么型号
鲤鱼ace解说用bgm
福州市的出租车收费标准是:乘车里程不超过3
空可乐罐可以用来烧烤么
涤棉纱卡 20*16 120*60是什么意思啊
1+1/(1+2)+1/(1+2+3)+....+1/(1+
AT89S52单片机0~999计数显示C语言程,起始显
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?