| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 613 人关注过本帖
标题:通过移动鼠标移动控件,鼠标移动后,控件消失了
只看楼主 加入收藏
shinesun
Rank: 2
等 级:论坛游民
帖 子:72
专家分:10
注 册:2012-12-12
结帖率:95%
收藏
已结贴  问题点数:20 回复次数:2 
通过移动鼠标移动控件,鼠标移动后,控件消失了
在PictureBox内,放置了一个command按钮,现在想实现通过移动鼠标,将该按钮移动到任意的位置。参考下面的代码
程序代码:
Dim x1, y1 As Double

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

x1 = X
y1 = Y
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 + (X - x1)
    Command1.Top = Command1.Top + (Y - y1)
End If

End Sub

但是,现在添加完后,移动command控件后,控件消失了,不知道怎么解决了,求助大家!
搜索更多相关主题的帖子: command 
2014-09-11 16:42
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4938
专家分:30047
注 册:2008-10-15
收藏
得分:20 
没了 发现错误啊。这是我测试用的代码,增加了最后一个的判断事件,其他的照你的代码。

程序代码:
'变量定义
Dim x1 As Single, y1  As Single

Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
x1 = X
y1 = Y
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 + (X - x1)
    Command1.Top = Command1.Top + (Y - y1)
End If
End Sub

Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
'放开鼠标后,确保按钮在 Picture 的可见范围内
If Command1.Left < 0 Then Command1.Left = 0
If Command1.Top < 0 Then Command1.Top = 0
If Command1.Left > Picture1.ScaleWidth - Command1.Width Then Command1.Left = Picture1.ScaleWidth - Command1.Width
If Command1.Top > Picture1.ScaleHeight - Command1.Height Then Command1.Top = Picture1.ScaleHeight - Command1.Height
End Sub

授人于鱼,不如授人于渔
早已停用QQ了
2014-09-11 17:48
shinesun
Rank: 2
等 级:论坛游民
帖 子:72
专家分:10
注 册:2012-12-12
收藏
得分:0 
我在网上又看到了一种方法,采用的是dragdrop的方法,但是这个方法不太好,被移动的控件的top和left属性等于Y和X值
2014-09-15 14:53
快速回复:通过移动鼠标移动控件,鼠标移动后,控件消失了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015558 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved