Visual Basic.NET - agregar picutreBox ent iempo de ejecucion

   
Vista:

agregar picutreBox ent iempo de ejecucion

Publicado por biki (38 intervenciones) el 04/11/2009 16:47:45
Hola a tod@s,
Estoy haciendo una especie de dibujo de parking en vb.net y necesito añadir tantos PictureBox como sean necesarios (uno por cada coche) cada vez que se pulsa el boton añadir, Despues tengo que ser capaz de mover ese pictureBox a lo largo y ancho de la pantalla.
Lo cierto es que lo puedo hacer para un unico picture box pero no se como hacer para añadir y manipular mas.

Os dejo el codigo que tengo implentado hasta ahora para que sepais como lo estoy haciendo. si alguien me puede ayudar. ..

Dim im As Image

Private Sub btnAnadirCoche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAnadirCoche.Click
pictureBoxElemento.Image = im
Me.btnRotar.Visible = True
End Sub

Private Sub pictureBox1_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) Handles pictureBoxElemento.MouseDown
' el boton izquierdo esta pulsado
If e.Button = Windows.Forms.MouseButtons.Left Then
btnDown = True
offsetX = e.X
offsetY = e.Y
ElseIf e.Button = Windows.Forms.MouseButtons.Left Then
End If
End Sub


Private Sub pictureBox1_MouseMove(ByVal sender As Object, ByVal e As MouseEventArgs) Handles pictureBoxElemento.MouseMove
If btnDown Then
'mover el pictureBox con el ratón
Me.pictureBoxElemento.Left += e.X - offsetX
Me.pictureBoxElemento.Top += e.Y - offsetY
End If
End Sub


Private Sub pictureBox1_MouseUp(ByVal sender As Object, ByVal e As MouseEventArgs) Handles pictureBoxElemento.MouseUp
' el boton izquierdo se libera
If e.Button = Windows.Forms.MouseButtons.Left Then
btnDown = False
End If
Dim cb As New ComboBox
cb.Location = New Point(e.X, e.Y)
cb.Visible = True
cb.BringToFront()
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:agregar picutreBox ent iempo de ejecucion

Publicado por Damian (824 intervenciones) el 06/11/2009 15:19:11
Bueno debes trabajarlo todo desde codigo como lo estas haciendo, pero si quieres crear varios y estos se crean cada vez que se presiona un boton debes declararlo ahi dentro del boton click, seria asi:

Private Sub btnAnadirCoche_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAnadirCoche.Click

Dim miPB As New PictureBox

'Le agregas propiedades
.....
.....
.....

'Lo agregas a tu formulario o contenedor
Me.Controls.Add(miPB)

'Creas un evento MouseMove por ejemplo
AddHandler miPB.MouseMove, AddressOf miPB_MouseMove

End Sub

Nota: Tambien lo puedes hacer dentro de un bucle y vas creando un nuevo picturebox en cada pasada.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar