ورود

View Full Version : راهنمایی برخورد شئ



aminm207
شنبه 26 آذر 1390, 18:55 عصر
سلام
میخوام بدونم چطور میشه با وی بی برنامه ای نوشت که با برخورد یک شئ به شئ دیگر یه اتفاقی بیافته مثلا 2 امتیاز اضافه بشه خواهشمندیم اگه دستوری داره واسه برخورد راهنمایی کنید.

program2vb
چهارشنبه 14 دی 1390, 18:37 عصر
سلام عزیز خسته نباشی .....

بفرما اینم کدش ....

امیدوارم بدردت بخوره موفق باشی

یا علی

siryahya
دوشنبه 27 آبان 1392, 03:29 صبح
من یه برنامه ای شبیه جاروبرقی میخام بنویسم ولی یه جایی موندم که شاید به نظر خیلی راحت باشه!
من اومد چند تا شکل به صورت رندم روی فرم در زمان اجرا تولید کردم، حالا یه picturebox دارم به عنوان جاروبرقی، که از اول فرم شروع میکنه به آخر، حالا تو مسیر اگه به این اشکال برسه باید اون شکل رو حذف کنه از فرم همون hide

مشکل من: نمیدونم چطور تشخیص بدم picturre box به شکل که به عنوان آشغال هستند برخورد میکنه
چطوری تشخیص بدم؟؟
نکته: نمیخام زمان اجرا موقعیتشونو ذخیره کنم و اونوطوری پیدا کنم، میخام تقریبا کارم شبیه جاروبرقی باشه

siryahya
دوشنبه 27 آبان 1392, 03:31 صبح
اینم کد نصفه کاره
فقط اگه بگید ممنون میشم تموم میکنم میزارم اگه کسی نیاز داشت
Dim Steps_jaro As Byte
Dim andaze As Byte
Private Sub Clean_trash()
'If (jaro.Left + jaro.Width) >= Then
'inja mikham test konam in barkhord ba shape ro
'
'
'
'
'
'
End Sub
Private Sub set_trash()
Dim tedad As Byte, i As Byte
tedad = 0
Do While (tedad = 0)
tedad = Fix(Rnd * (10))
Loop
For i = 1 To tedad
Call create_trash(i)
Next
End Sub
Private Sub create_trash(ByVal cnt As Integer)
Load trash_shape(cnt)
trash_shape(cnt).Left = Fix(Rnd * andaze) * jaro.Width
trash_shape(cnt).Top = Fix(Rnd * andaze) * jaro.Height
trash_shape(cnt).FillStyle = Fix(Rnd * 7)
trash_shape(cnt).Shape = Fix(Rnd * 6)
trash_shape(cnt).BackColor = QBColor(Fix(Rnd * 16))

trash_shape(cnt).Visible = True


End Sub
Private Sub reset_controls()
''''''''reSet the controls
Steps_jaro = 50 'Step jaro
andaze = 20 'tedad jaroye jashavande ro form

jaro.Left = 0
jaro.Top = 0

Form1.Height = jaro.Height * andaze
Form1.Width = jaro.Width * andaze

Form1.Picture = LoadPicture(App.Path & "\_Data\moket.jpg")
'''''''''''''''''''''''''''
End Sub
Private Sub go_R() 'raftan be jelo
Call Clean_trash

If (jaro.Left + jaro.Width) >= Form1.ScaleWidth Then
jaro.Top = jaro.Top + jaro.Height 'satre badi
jaro.Left = 0 'ebtedaye satre badi
End If
If jaro.Top >= Form1.ScaleHeight Then
MsgBox ("tamam shod")
Timer1.Enabled = False
End If

jaro.Left = jaro.Left + Steps_jaro

End Sub


Private Sub Form_Load()
Randomize
Call reset_controls
Call set_trash
End Sub

Private Sub Timer1_Timer()
Call go_R
End Sub


راستی اینم بگم این شیپ ها به صورت آرای ها هستند که زمان اجرا تولید کردم پس عملا به نظرم نمیتونم بگم شیپ 1 مختصاتش با جارو برابر بود حذف کنه، بازم شاید درک غلطی دارم

mohammad.gh76
سه شنبه 12 فروردین 1393, 18:02 عصر
سلام من می خوام یک برنامه بنویسم که وقتی یک تصویر باکلید جهت نما حرکت میکنه اگر بخوره به دیواره های که خودم کشیدم، بسوزه واین روند تا زمانی باشه که تا 3 بار بسوزه بعد مثلا یک ارور باید که شما 3 بار باختی ممنون میشم کمکم کنین