تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
برامج 167 للبرمجة الحلقة الاولى
#1
كاتب الموضوع : FlyToAbd

بسم الله الرحمن الرحيم

سنبدأ بعون الله بانشاء مجموعة من البرامج والتقنيات والاسس لعمل البرامج الكبيرة للمبرمجين المبتدئين

الهدف منها القفز بالمبرمجين المبتدئين والطلبة ورميهم بعمق العمل المتقدم وسيتم شرح برامج متقدمة ومطلوبه في السوق للطلبة ونقل خبرة المبرمجين الممارسين الى الطلبة المبتدأين

سأعتمد طريقة العنوان وبناء الحلقات بنفس الاسلوب

سأجرب نفسي معكم ببرنامج صغير عبارة عن لعبة اشرحها دائما لطلبة الدورات في اول محاضرة ونرى الاستجابة مع العلم انه استخدمت فيها بعض الاساليب المعقدة بالنسبة للطلبة الجدد

جرب ان تضع هذا الكود في نموذج والعب

Public Class Form1
'FlyToAbd@yahoo.com
Dim GameSizs As New Size(4, 4)
Dim BtnInd As New Point(20, 20)
Dim BtnSize As New Size(40, 40)
Dim Index As Integer = 0

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim Btn As Button
For i As Integer = 0 To GameSizs.Width * GameSizs.Height - 1
Btn = New Button
With Btn
.Text = i
.Name = "Btn" & i
.Size = BtnSize
.Location = New Point(BtnInd.X + (i Mod GameSizs.Width) * BtnSize.Width, BtnInd.Y + (i \ GameSizs.Width) * BtnSize.Height)
Me.Controls.Add(Btn)
AddHandler Btn.Click, AddressOf Btn_Click
End With
Next
Me.Controls("Btn" & GameSizs.Width * GameSizs.Height - 1).Visible = False

' New Game
Randomize(Now.Ticks)
For i As Integer = 0 To 5000
Dim RndID As Integer = (GameSizs.Width * GameSizs.Height - 1) * Rnd()
Btn_Click(Me.Controls("Btn" & RndID), New EventArgs)
Next
Index = 0
Me.Text = "Score= " & Index
End Sub

Private Sub Btn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim Btn As Button = CType(sender, Button)
Dim BtnID As Integer = Btn.Name.Substring(3)
If BtnID > (GameSizs.Width - 1) AndAlso (Not Me.Controls("Btn" & BtnID - GameSizs.Width).Visible) Then Swap(BtnID, BtnID - GameSizs.Width)
If BtnID < (GameSizs.Width * (GameSizs.Height - 1)) AndAlso (Not Me.Controls("Btn" & BtnID + GameSizs.Width).Visible) Then Swap(BtnID, BtnID + GameSizs.Width)
If BtnID Mod GameSizs.Width < (GameSizs.Width - 1) AndAlso (Not Me.Controls("Btn" & BtnID + 1).Visible) Then Swap(BtnID, BtnID + 1)
If BtnID Mod GameSizs.Width > 0 AndAlso (Not Me.Controls("Btn" & BtnID - 1).Visible) Then Swap(BtnID, BtnID - 1)
End Sub

Private Sub Swap(ByVal FindBtnID As Integer, ByVal ReplaceWithBtnID As Integer)
Dim FindBtn As Button = Me.Controls(FindBtnID)
Dim WithBtn As Button = Me.Controls(ReplaceWithBtnID)
WithBtn.Text = FindBtn.Text
WithBtn.Visible = True
FindBtn.Visible = False
Index += 1
Me.Text = "Score= " & Index
End Sub

End Class
}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الحلقة السابعة من السلسلة 167- استخراج جميع معلومات الجهاز RaggiTech 5 4,494 29-06-21, 05:29 AM
آخر رد: kebboud
  [مشروع] برامج محاكاة Fantastico 10 4,839 01-08-17, 12:23 AM
آخر رد: moor
  الترقيم التلقائي في برامج الداتا بيز silverlight 1 2,654 07-06-16, 12:05 AM
آخر رد: silverlight
  معلومة ::: أجعل المستخدم عبر تطبيقك يخرج برامج أخري - CodeDom RaggiTech 6 3,849 06-10-12, 07:58 PM
آخر رد: RaggiTech
  عمل ملف Setup لتنصيب برنامجك + إضافة برامج أساسية ظمن عملية التنصيب(شرح بالصور) RaggiTech 0 6,917 05-10-12, 02:25 AM
آخر رد: RaggiTech
  كيف تبرمج برنامج يصنع برامج ! Osama_Ghareeb 6 3,895 03-10-12, 08:12 PM
آخر رد: karika
  الحلقة صفر من السلسلة 167 للبرمجة RaggiTech 0 1,851 02-10-12, 04:32 PM
آخر رد: RaggiTech
  الحلقة العاشرة من السلسلة 167 - اضافة المخطط (Chart) الى التقرير RaggiTech 0 2,007 02-10-12, 04:31 PM
آخر رد: RaggiTech
  الحلقة السادسة من السلسلة 167 (المبلغ كتابتا) RaggiTech 0 1,854 02-10-12, 04:29 PM
آخر رد: RaggiTech
  الحلقة الرابعة من السلسلة 167 - حل مشكلة Socket مع مثال شات RaggiTech 0 2,170 02-10-12, 04:24 PM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم