Мне интересно, есть ли возможность получить контроль над любым динамически созданным объектом, например PictureBox
? То, что я пытаюсь достичь, - это изменить местоположение одного или нескольких PictureBox
. Это код, я использую:vb.net изменение местоположения динамически созданного объекта
Public Class Form1
Dim MyPictureBox() As PictureBox
Dim i As Integer
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
ReDim MyPictureBox(5)
i = i + 1
Try
MyPictureBox(i) = New PictureBox()
With MyPictureBox(i)
.Name = "PictureBox_" + i.ToString
.Visible = True
.Image = My.Resources.test
.Location = New Point(50 * i, 100)
.SizeMode = PictureBoxSizeMode.AutoSize
AddHandler .Click, AddressOf SelectPicture
End With
Controls.Add(MyPictureBox(i))
Catch ex As Exception
MsgBox("You cannot create any more pictures")
End Try
End Sub
Private Sub SelectPicture(sender As Object, e As EventArgs)
Dim PictureBoxName As String = sender.name
If PictureBoxName.Contains("PictureBox_") Then
Label1.Text = PictureBoxName.ToString
End If
End Sub
Private Sub Form1_MouseClick(sender As Object, e As MouseEventArgs) Handles Me.MouseClick
If e.Button = MouseButtons.Left Then
Dim myPictureBox As PictureBox
Try
With myPictureBox
.Name = Label1.Text.ToString
.Location = New Point(PointToClient(MousePosition))
End With
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End If
End Sub
End Class
Я действительно застрял с этим, и я понятия не имею, как заставить его работать.
В 'Form1_MouseClick' у вас нет экземпляра' PictureBox' и вы только объявили переменную типа 'PictureBox'. Каков сценарий? Как и какой PictureBox вы хотите изменить? –
Я хочу выбрать один или несколько PictureBox (ов), а затем изменить местоположение, нажав somwhere в форме. – Treno
Или разные слова ... как вы можете видеть, я могу создать до 5 pictureBoxes, и мой вопрос: «Как« переместить/удалить/изменить изображение и т. Д. »Любого из этого pictureBox, у меня нет полной идеи как это сделать. но после щелчка мышью по одному из них метка1 изменит текст на правильное имя (PictureBox_ID), но как я могу «использовать» этот «выбранный» pictureBox? – Treno