VB.NET创建一个类,使选定的picturebox可以用鼠标移动
我正在使用VB.NET(VS2015)进行一个项目。我将要制作很多可移动的图标,因此,我需要加快制作过程 我想创建一个类,我可以使用它使图片框可以用鼠标移动 例如,VB.NET创建一个类,使选定的picturebox可以用鼠标移动,vb.net,mouse,Vb.net,Mouse,我正在使用VB.NET(VS2015)进行一个项目。我将要制作很多可移动的图标,因此,我需要加快制作过程 我想创建一个类,我可以使用它使图片框可以用鼠标移动 例如,Make_可移动(图1,标签1) “label1”是它下面的标签。我已经有了这方面的代码。我只是让它隐形,让它再次可见。(经过测试和工作) 注意:我只需要移动picturebox!我已经有了标签的代码,但为此我需要能够移动picturebox 可能吗 我唯一能想到的是: Dim capt = 0 Dim a Dim b Public
Make_可移动(图1,标签1)
“label1”是它下面的标签。我已经有了这方面的代码。我只是让它隐形,让它再次可见。(经过测试和工作)
注意:我只需要移动picturebox!我已经有了标签的代码,但为此我需要能够移动picturebox
可能吗
我唯一能想到的是:
Dim capt = 0
Dim a
Dim b
Public Sub IMMove(lbl, pb)
If capt = 1 Then
lbl.Visible = False
pb.Location = New Point(pb.Location.X + (Cursor.Position.X - a), pb.Location.Y + (Cursor.Position.Y - b))
End If
End Sub
Public Sub IMDown(lbl, pb)
a = Cursor.Position.X
b = Cursor.Position.Y
capt = 1
End Sub
Public Sub IMUp(lbl, pb)
pb.Location = New Point(pb.Location.X + (Cursor.Position.X - a), pb.Location.Y + (Cursor.Position.Y - b))
capt = 0
lbl.Visible = True
lbl.Location = New Point(lbl.Location.X, lbl.Location.X - (lbl.Width + lbl.Width / 2) + lbl.Width + lbl.Width / 3)
lbl.Location = New Point(lbl.Location.Y, pb.Location.Y + pb.Height)
End Sub
但这不起作用,picturebox只是消失了,我必须为每个活动做些事情。例如,在picturebox1.MouseDown中:IMDown(Me,picturebox1,label1)
请帮助:)CodeProjects上已经有这样一个beast。从您的代码中,您对该对象不做任何操作。您希望为控件利用MouseMove、MouseDown和MouseUp事件。:)查看这篇文章,它将详细解释如何对标签(轻松修改为picturebox)实现您想要的功能:这似乎是我一直在寻找的!谢谢。我没有工作:/VS2005/VS2008的代码应该仍然兼容。