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

أحداث التطبيق Application Events

بدأه محمد سامر أبو سلو في 14 يونيو 2008 · 4 رد · 1,500 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

هذا تكرار لموضوع قديم لي وبما أنني وضعته سابقا كمرفقات وقد فقد المرفق لسبب ما ومع أنني أعدت إرفاق الملف في موضوع آخر ولكن لأهمية الموضوع النسبية أرجو أن تتحملوا تكراري للموضوع راجيا المعذرة من الجميع - فيما يلي النص الكامل للموضوع المذكور

الشرح هنا خاص بـ Visual Basic 2005 و ينطبق أيضا على 2008

للوصول إليها:

من مستكشف الحل Solution Explorer انقر بالماوس اليميني على مشروعك ثم اختر Properties ثم من صفحة Application اضغط زر View Application Events فيتم نقلك لمحرر الكود حيث تتمكن من استخدام الحدث الذي تحتاج لمعالجته في تطبيقك من خصائص التطبيق كما هو ظاهر بالصورة

post-2354-1213449994_thumb.jpg

post-2354-1213450023_thumb.jpg

وفيما يلي تعريف بكل حدث على حدة

My.Application.Startup Event

حيث ينطلق هذا الحدث عند بداية التطبيق لتضع فيه الأوامر التي تريد تنفيذها عند بداية التطبيق فمثلا إذا أردت تغيير الثقافة الخاصة بالتطبيق إلى العربية – سورية نستخدم كودا شبيها بالتالي:

Private Sub MyApplication_Startup(ByVal sender As Object, _
ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupEventArgs) _
	  Handles Me.Startup

			' تغيير الثقافة الخاصة بالتطبيق عند بداية التطبيق
			' قبل إظهار أية نافذة
			My.Application.ChangeCulture("Ar-Sy")

End Sub

و البارامتر e يشير إلى الفئة Class StartupEventArgs التي توفر معلومات حول بداية التطبيق ولها عدة خصائص مثل Cancel التي تقوم بإلغاء الحدث و CommandLine التي تمرر بارامترات سطر الأوامر للتطبيق command-line arguments كما يمكنك الحصول على بارامترات سطر الأوامر أيضا باستخدام الأمر My.Application.CommandLineArgs من أي مكان في التطبيق

My.Application.Shutdown Event

حيث ينطلق هذا ا الحدث عند نهاية التطبيق فيمكنك استخدامه لمعالجة الأمور التي تحتاجها قبل نهاية التطبيق مباشرة

مثال :

		Private Sub MyApplication_Shutdown(ByVal sender As Object, _
			ByVal e As System.EventArgs) Handles Me.Shutdown

			My.Application.Log.WriteEntry("Application Shut Down.")

		End Sub

My.Application.StartupNextInstance Event

حيث ينطلق هذا ا الحدث عندما تحاول تشغيل نسخة ثانية من التطبيق المفترض أن يكون وحيد التواجد single-instance application والتطبيق مفتوح فعليا

مثال:

Private Sub MyApplication_StartupNextInstance(ByVal sender As Object, _
  ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupNextInstanceEventArgs)_
  Handles Me.StartupNextInstance

			Dim inputArgument As String = "/input="
			Dim inputName As String = ""
			For Each s As String In e.CommandLine
				If s.ToLower.StartsWith(inputArgument) Then
					inputName = s.Remove(0, inputArgument.Length)
				End If
			Next
			If inputName = "" Then
				MsgBox("No input name")
			Else
				MsgBox("Input name: " & inputName)
			End If
End Sub

حيث يشير البارامتر e للفئة StartupNextInstanceEventArgs التي تعيد معلومات حول تواجدات التطبيق Application Instancs حيث تحدد الخاصية BringToForeground فيما إذا كان يجب نقل التواجد الأول للتطبيق إلى الواجهة و الخاصية CommandLine تحدد بارامترات سطر الأوامر للتواجد الجديد للتطبيق

My.Application.UnhandledException Event

حيث ينطلق هذا ا الحدث عندما ينطلق استثناء Exception في تطبيقك لم تتم معالجته داخل التطبيق لتتمكن من إجراء معالجة لهذا الاستثناء

مثال:

Private Sub MyApplication_UnhandledException(ByVal sender As Object, _
  ByVal e As Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs) _
  Handles Me.UnhandledException

			My.Application.Log.WriteException(e.Exception, _
	  TraceEventType.Critical, "Unhandled Exception.")

End Sub

و البارامتر e يشير إلى الفئة UnhandledExceptionEventArgs التي تحوي معلومات حول الخطأ مثل الخاصية Exception التي تحوي معلومات عن الخطأ و الخاصية ExitApplication التي تحدد فيما إذا كان يجب إنهاء التطبيق فور نهاية الإجرائية

NetworkChange.NetworkAvailabilityChanged Event

ينطلق هذا الحدث عندما تحدث تغييرات حول توافر الشبكة

Private Sub MyApplication_NetworkAvailabilityChanged(ByVal sender As Object, _
	ByVal e As Microsoft.VisualBasic.Devices.NetworkAvailableEventArgs) _
	Handles Me.NetworkAvailabilityChanged

			MsgBox(e.IsNetworkAvailable.ToString)

End Sub

حيث يشير البارامتر e للفئة NetworkAvailableEventArgs التي تمرر معلومات حول توافر الشبكة ولها خاصية مفيدة هي IsNetworkAvailable التي تعيد قيمة منطقية هل الشبكة متوافرة أم لا

أرجو أن يكون هذا الشرح على عجالة مفيدا للجميع في التعرف على Application Events حيث يمكنكم الحصول على التفاصيل حول كل حدث من هذه الأحداث في مكتبة MSDN المرفقة مع فيجول ستوديو

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

خاص بمنتديات الفريق العربي للبرمجة

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

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

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

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

#2

بارك الله فيك

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

هل هناك حدث أو طريقة لمعرفة توفر الإنترنت على مستوى APPLICATION?

وألف شكر على هذا الموضوع الأساسي والمهم ..

البرمجه منطق وذوق وخدع .............والمعرفة طريق سهل وعذب

#3

أستاذي الفاضل محمد سامر أبو سلو

هذه المعلومات وإن كانت قديمة إلا أنها مفيدة جدا جدا على الأقل بالنسبة لي وقد جاءت في وقتها .

أملك الآن تطبيق يتألف من عدة نماذج وقد كنت بصدد إعداد دالة يتم استدعائها من أي نموذج يتم إغلاق البرنامج منه لأتأكد من إغلاق الملفات المفتوحة وإغلاق الاتصال بقاعدة البيانات ولاشك بأن هذا الحل ممل مع كثرة النماذج أما الآن فلا داعي لذلك :)

بارك الله فيك

#4
MEGREN كتب:
بارك الله فيك

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

هل هناك حدث أو طريقة لمعرفة توفر الإنترنت على مستوى APPLICATION?

وألف شكر على هذا الموضوع الأساسي والمهم ..

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

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

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

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

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

#5

شكرا على موضوعك القيم

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