التعامل مع صناديق الحوار msgbox

الناقل : mahmoud | المصدر : www.kl28.com

الرسائل Msgbox



الشكل العام للرسالة :

 

MsgBox 'نص الرسالة', vbDefaultButton1, 'العنوان'

الشكل الكامل (مع ربط بالتعليمات):

MsgBox 'نص الرسالة', vbMsgBoxHelpButton, 'العنوان', 'c:\windows\help\windows.chm', 0

مسار ملف التعليمات



إليك بالأمثلة عن الرسائل :

الشكل العام

Msgbox'رسالتك هنا'


مثال

On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
MsgBox 'الرجاء إدخال قرص', vbCritical, 'لايوجد قرص هنا'

 

MsgBox 'حدث خطأ', vbCritical, 'خطأ'




On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
MsgBox 'الرجاء إدخال قرص', vbExclamation, 'لايوجد قرص هنا'

 

MsgBox 'رسالتك هنا', vbExclamation, 'العنوان'


On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
MsgBox 'الرجاء إدخال قرص', vbInformation, 'لايوجد قرص هنا'

 

MsgBox 'رسالتك هنا', vbInformation, 'العنوان'


On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
MsgBox 'الرجاء إدخال قرص أنقر فوق تعليمات للمزيد', vbMsgBoxHelpButton, 'لايوجد قرص هنا', 'c:\windows\help\windows.chm', 0

 

MsgBox 'رسالتك هنا', vbMsgBoxHelpButton, 'العنوان', 'C:\WINDOWS\HELP\calc.CHM', 0


On Error GoTo r
Dir1 = Drive1
Exit Sub
r:

If MsgBox('الرجاء إدخال قرص أنقر فوق موافق', vbOKCancel, 'لايوجد قرص هنا') = vbOK Then
MsgBox 'أعد المحاولة'
Else
End
End If

 

MsgBox 'رسالتك هنا ', vbOKCancel, 'العنوان'


On Error GoTo r
Dir1 = Drive1
Exit Sub
r:

If MsgBox('الرجاء إدخال قرص أنقر فوق موافق', vbOKCancel, 'لايوجد قرص هنا') = vbOK Then
MsgBox 'أعد المحاولة'
Else
End
End If

 

MsgBox 'رسالتك هنا ', vbYesNo + vbQuestion, 'العنوان'


On Error GoTo r
Dir1 = Drive1
Exit Sub
r:

If MsgBox('لايوجد قرص هل تريد الخروج؟', vbYesNo, 'لايوجد قرص هنا') = vbYes Then
End
End If

 

MsgBox 'رسالتك هنا ', vbSystemModal, 'العنوان'


رسالة عادية مع أيقونة النظام

MsgBox 'رسالتك هنا ', vbAbortRetryIgnore, 'العنوان'


On Error GoTo r
Dir1 = Drive1
Exit Sub
r:
Dim a
a = MsgBox(' أنقر فوق إعادة لمحاولة أخرى - تجاهل : للبقاء دون محاولة-إحباط : إغلاق البرنامج', vbAbortRetryIgnore, 'لايوجد قرص هنا')
Select Case a
Case vbRetry

MsgBox 'أعد المحاولة'
Case vbAbort
End
Case vbIgnore
End Select



هام : كيفية وضع عدة أسطر تحت بعضها في الرسالة:

Dim a As String
a = 'السطر الأول' & vbCrLf
a = a & 'السطر الثاني' & vbCrLf
a = a & 'السطر الثالث'
MsgBox a, vbMsgBoxRight + vbInformation, 'العنوان'
'ويمكنك أن تضيف عدد السطور التي تريد بنفس الطريقة
' '&vbCrlf' السطر الأخير بدون


لاحظ المكتوب بالأزرق وهو نوع الرسالة وهو يعني إتجاه الرسالة من اليمين لليسار + تلميحات وهذا هام في الرسالة المكتوبة باللغة العربية

أي إنه يمكنك أن إضافة إشارة + بعد النوع الأول لإختيار نوع آخر مثلاً سؤال ('نعم ولا'+ 'خطأ') هذه طريقة كتابتها:

 

MsgBox 'الرسالة', vbCritical + vbYesNo, 'عنوان'


وهذه طريقة أخرى لكتابة الرسالة بعدة سطور

Dim a As String
a = 'السطر الأول' & vbCrLf & 'السطر الثاني' & vbCrLf & 'السطر الثالث'
MsgBox a, vbMsgBoxRight + vbInformation, 'العنوان'

انتهينا

والله ولي التوفيق