الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

لمن يرغب في تعلم Class والإجراء Sub برنامج بسيط ومفيد من تصميمي .. أقدمه لكم .

بدأه 2120 في 31 مارس 2009 · 3 رد · 675 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

برنامج بسيط وجميل من تصميمي الشخصي .. لكل من يرغب في تعلم Class

صورة البرنامج

762256158.jpg

Public Class Form1

	Dim MyBook As New Book

	Class Book
		Public BookName As String
		Public BookAuthors As String
		Public BookPublisher As String
		Public BookDatePublished As Integer

	End Class


	Public Sub SetBook(ByVal Name As String, ByVal Authors As String, ByVal Publisher As String, ByVal DatePublished As Integer)
		lblBookName.Text = MyBook.BookName
		lblBookAuthors.Text = MyBook.BookAuthors
		lblBookPublisher.Text = MyBook.BookPublisher
		lblBookDatePublished.Text = MyBook.BookDatePublished
	End Sub

	Public Sub ShowBook()
		lblBookName.Text = txtBookName.Text
		lblBookAuthors.Text = txtBookAuthors.Text
		lblBookPublisher.Text = txtBookPublisher.Text
		lblBookDatePublished.Text = txtBookDatePublished.Text


	End Sub



	Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
		If (txtBookName.Text.Length = 0) Or (txtBookAuthors.Text.Length = 0) Or (txtBookPublisher.Text.Length = 0) Or (txtBookDatePublished.Text.Length = 0) Then
			MsgBox("Please complete all information")
		Else
			SetBook(txtBookName.Text, txtBookAuthors.Text, txtBookPublisher.Text, txtBookDatePublished.Text)
		End If
		ShowBook()
	End Sub

	Private Sub txtBookDatePublished_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtBookDatePublished.KeyPress
		Select Case e.KeyChar
			Case "0" To "9"
				txtBookDatePublished.ForeColor = Color.Red
			Case Else
				e.Handled = True
		End Select


	End Sub

	Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
		txtBookAuthors.Enabled = False
		txtBookDatePublished.Enabled = False
		txtBookName.Enabled = False
		txtBookPublisher.Enabled = False
		Button1.Enabled = False
	End Sub

	Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged

		If CheckBox1.Checked = True Then
			txtBookAuthors.Enabled = True
			txtBookDatePublished.Enabled = True
			txtBookName.Enabled = True
			txtBookPublisher.Enabled = True
			Button1.Enabled = True
		Else
			txtBookAuthors.Enabled = False
			txtBookDatePublished.Enabled = False
			txtBookName.Enabled = False
			txtBookPublisher.Enabled = False
			Button1.Enabled = False

		End If

	End Sub
End Class

BookDemo.rar

تم تعديل هذه المشاركة بواسطة 2120 في 31 مارس 2009 في 11:19

#2

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

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#3
محمد سامر أبو سلو كتب:
شكرا لك اخي على الموضوع بس ياريت تشرح الكود للإخوان مشان المبتدئين يعرفوا بالضبط ماذا تعمل وما هي الأفكار التي استخدمتها في الفئة المطروحة

إن شاء الله سأقوم بذلك

#4

في البداية عرفنا الفئة وأسميناها : Book

ثم عرفنا سمات الفئة Book بأستعمال متغيرات أعضاء بالفئة .

	Class Book
		Public BookName As String
		Public BookAuthors As String
		Public BookPublisher As String
		Public BookDatePublished As Integer

	End Class

ثم عرفنا متغير عام باسم MyBook نوعه هو الفئة Book وهو ما يطلق عليه المبرمجون كائنا أو تواجدا للفئة .

	Dim MyBook As New Book

ثم عرفنا الإجراء SetBook من أجل ربط المدخلات ب label واسندنا لهذا الإجراء برامترات بعدد أعضاء الفئة لأستدعائها بعد ذلك .

ثم وأمام كل ليبل وبأستعمال عامل النقطة ، حددنا متغير الفئة وهو هنا MyBook ثم المتغير العضو ضمن الفئة ، لإستدعاء الروتين الفرعي SetBook

	Public Sub SetBook(ByVal Name As String, ByVal Authors As String, ByVal Publisher As String, ByVal DatePublished As Integer)
		lblBookName.Text = MyBook.BookName
		lblBookAuthors.Text = MyBook.BookAuthors
		lblBookPublisher.Text = MyBook.BookPublisher
		lblBookDatePublished.Text = MyBook.BookDatePublished
	End Sub

ثم عرفنا إجراء بأسم ShowBook من أجل عرض النتائج و ربطنا كل TextBox بما يقابله من Label

	Public Sub ShowBook()
		lblBookName.Text = txtBookName.Text
		lblBookAuthors.Text = txtBookAuthors.Text
		lblBookPublisher.Text = txtBookPublisher.Text
		lblBookDatePublished.Text = txtBookDatePublished.Text


	End Sub

وفي إجراء زر Button قمنا بوضع الكود التالي :

	Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
		If (txtBookName.Text.Length = 0) Or (txtBookAuthors.Text.Length = 0) Or (txtBookPublisher.Text.Length = 0) Or (txtBookDatePublished.Text.Length = 0) Then
			MsgBox("Please complete all information")
		Else
			SetBook(txtBookName.Text, txtBookAuthors.Text, txtBookPublisher.Text, txtBookDatePublished.Text)
		End If
		ShowBook()
	End Sub

في هذا الكود قمنا أولا بالتأكد من وجود مدخلات في TextBox من قبل المستخدم وإلا ستظهر له رسالة تخبره بالمدخل الناقص .

وإذا كانت المدخلات كاملة ..

نقوم باستدعاء الإجراء SetBook الذي مررنا له أربع برامترات بمثل العدد الذي عرفنا فيه برامترات هذا الإجراء .

ثم استدعينا الإجراء ShowBook لعرض النتائج .

وفي الكود التالي :

	Private Sub txtBookDatePublished_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtBookDatePublished.KeyPress
		Select Case e.KeyChar
			Case "0" To "9"
				txtBookDatePublished.ForeColor = Color.Red
			Case Else
				e.Handled = True
		End Select


	End Sub

قمنا بالتأكد من أن المتسخدم يدخل عدد وليس حرف في TextBox في تاريخ نشر الكتاب .

والكود الأخير في البرنامج :

	Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
		txtBookAuthors.Enabled = False
		txtBookDatePublished.Enabled = False
		txtBookName.Enabled = False
		txtBookPublisher.Enabled = False
		Button1.Enabled = False
	End Sub

	Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged

		If CheckBox1.Checked = True Then
			txtBookAuthors.Enabled = True
			txtBookDatePublished.Enabled = True
			txtBookName.Enabled = True
			txtBookPublisher.Enabled = True
			Button1.Enabled = True
		Else
			txtBookAuthors.Enabled = False
			txtBookDatePublished.Enabled = False
			txtBookName.Enabled = False
			txtBookPublisher.Enabled = False
			Button1.Enabled = False

		End If

	End Sub

فقط من أجل شكل البرنامج تفعيل إدخال كتاب من عدمه

هذا شرح مبسط أتمنى أن ينال أعجابكم .. ولكم جزيل الشكر

تم تعديل هذه المشاركة بواسطة 2120 في 31 مارس 2009 في 12:59

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…