View Full Version : ایجاد کنترل پی در پی
hosein320
دوشنبه 25 دی 1391, 21:48 عصر
سلام
میخواستم چند تا کنترل تعریف کنم با یه کد
مثلا اسم متغیرها به این صورت بشه
pic1,pic2,pic3,...
ساختن یکی شو بلدم
ولی گروهی رو نه
ممنون
فرید نجفلو
دوشنبه 25 دی 1391, 22:43 عصر
سلام
Public Class Form1
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
Me.WindowState = FormWindowState.Maximized
For i = 1 To 10
Dim Pic As New PictureBox
With Pic
.Name = "Pic" & i
.SizeMode = PictureBoxSizeMode.StretchImage
.Size = New Size(20, 20)
.Location = New Point(i * 20, i * 20)
.Image = Me.Icon.ToBitmap
End With
Me.Controls.Add(Pic)
Next
End Sub
End Class
hosein320
دوشنبه 25 دی 1391, 23:36 عصر
اگه بخوای بعدا از این کنترل ها استفاده کرد باید چکار کرد؟
فرید نجفلو
سه شنبه 26 دی 1391, 00:53 صبح
Public Class Form1
Private WithEvents tmr As New Timer
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
Me.WindowState = FormWindowState.Maximized
For i = 1 To 10
Dim Pic As New PictureBox
With Pic
.Name = "Pic" & i
.SizeMode = PictureBoxSizeMode.StretchImage
.Size = New Size(20, 20)
.Location = New Point(i * 20, i * 20)
.Image = Me.Icon.ToBitmap
End With
Me.Controls.Add(Pic)
Next
tmr.Start()
End Sub
Private Sub tmr_Tick(sender As Object, e As System.EventArgs) Handles tmr.Tick
Dim rnd As New Random
Dim Pic = CType(Me.Controls("Pic" & rnd.Next(1, 10)), PictureBox)
Pic.Left = rnd.Next(0, Me.Width)
Pic.Top = rnd.Next(0, Me.Height)
End Sub
End Class
hosein320
سه شنبه 26 دی 1391, 02:39 صبح
من از کد شما استفاده کردم
ولی اون اشیلع رو نمیتونم تو یکی از توابعم استفاده کنم
و پیغام خطا میده:(
ولی تو بقیه کنترل ها خطا نمیگیره
چرا:متعجب:
فرید نجفلو
سه شنبه 26 دی 1391, 02:51 صبح
باید کد رو می دادید تا اشکالش بر طرف بشه
حتی خطا رو هم نگفتید چیه!
hosein320
سه شنبه 26 دی 1391, 03:04 صبح
این کل برنامه منه
البته هنوز امروز شروع کردم بنویسمش:لبخند:
فقط وقتی اجرا کردینیه دکمه تو فرم هست
که باید اونو حداقل سه بار فشار بدین
و بعد یه کلید بزنید
http://s2.picofile.com/file/7620777418/Code.rar.html
فرید نجفلو
سه شنبه 26 دی 1391, 03:45 صبح
Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If i < 10 Then
i += 1 '*****
Dim picenemy As New PictureBox
xp = xp + picenemy.Width + 30
yp = PMain.Height - 10
With picenemy
.Name = "picenamy" & i
Me.Text = picenemy.Name
.Top = yp
.Left = xp
.Image = p2.Image
End With
PMain.Controls.Add(picenemy)
If colission(PicTir, picenemy) = True Then
picenemy.Visible = False
End If
Me.Text = i & "'" & picenemy.Name
End If
End Sub
Private Sub TimerEnemy_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerEnemyBoom.Tick
If i > -1 Then
Dim picenemy = CType(PMain.Controls("picenamy" & i), PictureBox) '*****
If colission(picenemy, PicTir) = True Then
MsgBox(True)
picenemy.Visible = False
picenemy.Top = 10000
PMain.Controls.Remove(picenemy) '*****
i -= 1
End If
End If
End Sub
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.