Создание и передвижение объектов - Visual Basic .NET
Формулировка задачи:
Возник такой вопрос, после создание объекта на форме, мне необходимо его передвигать как это сделать если у меня нет "Handles" того объекта который я собираюсь передвигать. Или есть способ для которого нам не обязательно знать точное имя объекта, а достаточно лишь того что он "PictureBox"? И возможно ли узнать индекс того объекта на который мы нажимаем мышкой? (пытался это сделать последними 5 строчками, но так ничего и не вышло, хотя никаких ошибок не выдавал)
Решение задачи: «Создание и передвижение объектов»
textual
Листинг программы
Public Class Form1 Dim mov As Boolean Dim kol As Integer, i As Integer, ic As Integer Dim ikon(kol) As PictureBox Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click kol = Val(TextBox1.Text) ReDim ikon(kol) For Me.i = 1 To kol Me.SuspendLayout() ikon(i) = New PictureBox Dim picture As New PictureBox() picture.Image = Image.FromFile("D:\tmp\1.jpg") AddHandler picture.MouseDown, AddressOf PicAll_MouseDown 'AddHandler picture.MouseUp, AddressOf PicAll_MouseUp AddHandler picture.MouseMove, AddressOf PicAll_MouseMove Me.Controls.AddRange(New Control() {picture}) Me.ResumeLayout() ikon(i) = picture ikon(i).Image = Image.FromFile("D:\tmp\1.jpg") ikon(i).BringToFront() ikon(i).Visible = True ikon(i).Top = 20 ikon(i).Width = 130 ikon(i).Height = 111 ikon(i).Left = 150 * (i + 1) Next End Sub Private Sub PicAll_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) 'Выбор картинки мышкой For Me.i = 1 To kol If ikon(i).Capture = True Then 'MsgBox(i) TextBox2.Text = i Exit For End If Next End Sub Private Sub PicAll_MouseMove(ByVal sender As Object, ByVal e As MouseEventArgs) 'Перемещение картинки мышкой Dim mouseX As Integer = e.X Dim mouseY As Integer = e.Y ic = TextBox2.Text If ikon(ic).Capture = True Then ikon(ic).Left = ikon(ic).Left + mouseX ikon(ic).Top = ikon(ic).Top + mouseY End If End Sub End Class
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д