10-06-17, 08:34 PM
(آخر تعديل لهذه المشاركة : 10-06-17, 08:49 PM {2} بواسطة عبدالله خضر.)
2
- دالة السؤال للتأكد :
إسمها ( كما سميتها طبعا ) : Confirm
كود ونص الدالة :
شرح عمل الدالة :
بالتأكيد كل برنامج قوي أو ذكي التصميم يخضع لبوابات قبل الوصول للوجهة النهائية ، أقصد بها مثلا قد تٌدخل بيانات ولكن تريد التأكد قبل حفظها أو تعديلها أو حذفها نهائياً ، ولابد أنك كمبرمج تعرف الدالة MsgBox ، وهي لسؤال مستخدم البرنامج قبل عمل شيء ما كما ذكرت ...
الفكرة هنا في الدالة Confirm هي نفس عمل الدالة MsgBox ، ولكن بشكل أبسط بخصوص اللغتين : عربية أو إنجليزية ، وأنت تعرف الفرق في إتجاه النص ( العربي ) عنه في إتجاه النص ( الإنجليزي ) ، فالأول من اليمين نحو اليسار ، والثاني بالعكس ، وكذلك علامتي الإستفهام ( ؟ أو ? ) .. فهذه الدالة مرنة باللغتين وبدون إضافة علامة الإستفهام ، ومخرجاتها منطقية ( نعم أو لا ) True أو False ..
للدالة ثلاث متغيرات ( بوابات ) :
الأولى : Title As String
وهي نص ( التعليق ) في مربع رسالة التأكد .
الثانية : QuestionOfMessage As String
وهي نص ( محتوى الرسالة ) في مربع رسالة التأكد .
الثالثة : إفتراضية منطقية : RightToLeftStyle As Boolean = False
وهي إختيارية محددة مسبقا على المنطق ( لا False ) بخصوص إتجاه الكتابة ( من اليمين إلى اليسار = لا ) أي تخص النص الإنجليزي ..
أما في حال أردت العكس ( نص عربي ) فما عليك إلا أن تحدد المنطق ( نعم True ) ليكون مخرجات الدالة باللغة العربية وإتجاه نصها ..
فهذه الدالة توفر عليك إختيار وتحديد المعاملات بخصوص السؤال باللغتين ..
- دالة السؤال للتأكد :
إسمها ( كما سميتها طبعا ) : Confirm
كود ونص الدالة :
كود :
Function Confirm(ByVal Title As String, ByVal QuestionOfMessage As String, Optional ByVal RightToLeftStyle As Boolean = False) As Boolean
Dim A, B, Q As String
Q = ""
A = Title.Trim + " : "
B = QuestionOfMessage.Trim
Dim Stl As MsgBoxStyle, Rs As MsgBoxResult, R As Boolean = False
Select Case RightToLeftStyle
Case True
Stl = MsgBoxStyle.Question + MsgBoxStyle.YesNo + MsgBoxStyle.MsgBoxRight
Q = "؟"
Case False
Stl = MsgBoxStyle.Question + MsgBoxStyle.YesNo
Q = "?"
End Select
Rs = MsgBox(B + " " + Q, Stl, A)
If Rs = MsgBoxResult.Yes Then R = True
Return R
End Functionشرح عمل الدالة :
بالتأكيد كل برنامج قوي أو ذكي التصميم يخضع لبوابات قبل الوصول للوجهة النهائية ، أقصد بها مثلا قد تٌدخل بيانات ولكن تريد التأكد قبل حفظها أو تعديلها أو حذفها نهائياً ، ولابد أنك كمبرمج تعرف الدالة MsgBox ، وهي لسؤال مستخدم البرنامج قبل عمل شيء ما كما ذكرت ...
الفكرة هنا في الدالة Confirm هي نفس عمل الدالة MsgBox ، ولكن بشكل أبسط بخصوص اللغتين : عربية أو إنجليزية ، وأنت تعرف الفرق في إتجاه النص ( العربي ) عنه في إتجاه النص ( الإنجليزي ) ، فالأول من اليمين نحو اليسار ، والثاني بالعكس ، وكذلك علامتي الإستفهام ( ؟ أو ? ) .. فهذه الدالة مرنة باللغتين وبدون إضافة علامة الإستفهام ، ومخرجاتها منطقية ( نعم أو لا ) True أو False ..
للدالة ثلاث متغيرات ( بوابات ) :
الأولى : Title As String
وهي نص ( التعليق ) في مربع رسالة التأكد .
الثانية : QuestionOfMessage As String
وهي نص ( محتوى الرسالة ) في مربع رسالة التأكد .
الثالثة : إفتراضية منطقية : RightToLeftStyle As Boolean = False
وهي إختيارية محددة مسبقا على المنطق ( لا False ) بخصوص إتجاه الكتابة ( من اليمين إلى اليسار = لا ) أي تخص النص الإنجليزي ..
أما في حال أردت العكس ( نص عربي ) فما عليك إلا أن تحدد المنطق ( نعم True ) ليكون مخرجات الدالة باللغة العربية وإتجاه نصها ..
كمثال نضع الكود الآتي في زر Button :
فهذه الدالة توفر عليك إختيار وتحديد المعاملات بخصوص السؤال باللغتين ..
Dim W as Boolean = Confirm ( "للتأكد" , "هل أنت متأكد للخروج نهائيا من البرنامج" , True )
(( ملاحظة مهمة هنا : لم أستطع صياغة المحاذاة العربية كما يجب بسبب شوائب دعم اللغة العربية في المحرر ))
كود :
W = True then End
أو
If W then Endفهذه الدالة توفر عليك إختيار وتحديد المعاملات بخصوص السؤال باللغتين ..

