במסד נתונים שולחני של Access, הפונקציה MsgBox מציגה הודעה בתיבת דו-שיח, ממתינה שהמשתמש יבחר לחצן ומחזירה הודעה Integer המציינת את הלחצן בו בחר המשתמש.
תחביר
MsgBox(prompt[, buttons][, title][, helpfile][, context])
תחביר הפונקציות מכיל את הארגומנטים MsgBox הבאים:
| ארגומנט | תיאור |
|---|---|
prompt |
נדרש. ביטוי המחרוזת מוצג כהודעה בתיבת הדו-שיח. האורך המרבי של prompt כ- 1024 תווים, בהתאם לרוחב התווים הנמצאים בשימוש. אם prompt ישנה יותר משורה אחת, ניתן להפריד בין השורות באמצעות תו החזרת גררה (Chr(13)), תו הזנת שורה (Chr(10)), או שילוב החזרת גררה והזנת שורות (Chr(13) & Chr(10)) בין כל שורה. |
buttons |
אופציונלי. ביטוי מספרי שהוא סכום הערכים המציינים את מספר וסוג הלחצנים שיוצגו, את סגנון הסמל שבו יש להשתמש, את הזהות של לחצן ברירת המחדל ואת המודאליות של תיבת ההודעה. אם הוא מושמט, ערך ברירת המחדל עבור buttons הוא 0. |
title |
אופציונלי. ביטוי מחרוזת המוצג בפס הכותרת של תיבת הדו-שיח. אם תשמיט titleאת שם היישום, יופיע בפס הכותרת. |
helpfile |
אופציונלי. ביטוי מחרוזת המזהה את קובץ העזרה שבו יש להשתמש כדי לספק עזרה תלוית-הקשר עבור תיבת הדו-שיח. אם helpfile מסופק, context יש לספק גם. |
context |
אופציונלי. ביטוי מספרי שהוא מספר הקשר העזרה שהוקצה לנושא העזרה המתאים על-ידי מחבר העזרה. אם context מסופק, helpfile יש לספק גם. |
הגדרות
הגדרות הארגומנט buttons הן:
| קבוע | Value | תיאור |
|---|---|---|
vbOKOnly |
0 |
הצג אישור בלבד. |
vbOKCancel |
1 |
הצג אישורוביטול. |
vbAbortRetryIgnore |
2 |
הצג 'ביטול', 'נסה שוב' ו'התעלם'. |
vbYesNoCancel |
3 |
הצגת 'כן', 'לא' ו'ביטול'. |
vbYesNo |
4 |
הצגת 'כן'ו'לא'. |
vbRetryCancel |
5 |
הצג , נסה שובוביטול. |
vbCritical |
16 |
הצגת סמל ההודעה הקריטית . |
vbQuestion |
32 |
הצגת סמל שאילתת האזהרה . |
vbExclamation |
48 |
הצגת סמל הודעת האזהרה . |
vbInformation |
64 |
הצגת סמל הודעת המידע . |
vbDefaultButton1 |
0 |
הפיכת הלחצן הראשון לברירת המחדל. |
vbDefaultButton2 |
256 |
הפיכת הלחצן השני לברירת המחדל. |
vbDefaultButton3 |
512 |
הפוך את הלחצן השלישי לברירת המחדל. |
vbDefaultButton4 |
768 |
הפוך את הלחצן הרביעי לברירת המחדל. |
vbApplicationModal |
0 |
יישום מודאלי. המשתמש חייב להגיב לתיבת ההודעה לפני המשך העבודה ביישום הנוכחי. |
vbSystemModal |
4096 |
מערכת מודאלית. כל היישומים מושעים עד שהמשתמש מגיב לתיבת ההודעה. |
vbMsgBoxHelpButton |
16384 |
הוסף לחצן עזרה לתיבת ההודעה. |
VbMsgBoxSetForeground |
65536 |
ציין את חלון תיבת ההודעה כחלון הקידמה. |
vbMsgBoxRight |
524288 |
יישור הטקסט לימין. |
vbMsgBoxRtlReading |
1048576 |
גרום לטקסט להופיע עם קריאה מימין לשמאל במערכות עברית וערבית. |
קבוצת הערכים הראשונה (0 עד 5) מתארת את מספר וסוג הלחצנים המוצגים בתיבת הדו-שיח. הקבוצה השנייה (16, 32, 48, ) 64מתארת את סגנון הסמל. הקבוצה השלישית (0, 256, 512) קובעת איזה לחצן יהיה ברירת המחדל. הקבוצה הרביעית (0, 4096) קובעת את המודאליות של תיבת ההודעה. בעת חיבור מספרים כדי ליצור ערך סופי עבור הארגומנט, buttons השתמש רק במספר אחד מכל קבוצה.
הערה
קבועים אלה מוגדרים על-ידי Visual Basic for Applications. כתוצאה מכך, תוכל להשתמש בשמות בכל מקום בקוד במקום בערכים בפועל.
ערכים מוחזרים
| קבוע | Value | תיאור |
|---|---|---|
vbOK |
1 |
אישור |
vbCancel |
2 |
ביטול |
vbAbort |
3 |
לבטל |
vbRetry |
4 |
נסה שוב |
vbIgnore |
5 |
התעלם |
vbYes |
6 |
כן |
vbNo |
7 |
לא |
הערות
כאשר שניהם helpfilecontext מסופקים, המשתמש יכול להקיש F1 ב- Windows או עזרה ב- macOS כדי להציג את נושא העזרה התואם context. יישומים מארחים מסוימים, כגון Microsoft Excel, מוסיפים גם הם באופן אוטומטי לחצן עזרה לתיבת הדו-שיח.
אם תיבת הדו-שיח מציגה לחצן ביטול , הקשה על Esc משפיעה כמו בחירה באפשרות ביטול. אם תיבת הדו-שיח מכילה לחצן 'עזרה ', מסופקת עזרה תלויית הקשר עבור תיבת הדו-שיח. עם זאת, לא מוחזר ערך עד שהמשתמש בוחר באחד מהלחצנים האחרים.
הערה
כדי לציין יותר מהארגומנט הראשון בעל שם, עליך להשתמש MsgBox בביטוי. כדי להשמיט ארגומנטים מסוימים של מיקום, עליך לכלול את מפריד הפסיק המתאים.
דוגמה
הערה
הדוגמה הבאה מדגימה כיצד להשתמש בפונקציה זו במודול Visual Basic for Applications (VBA).
דוגמה זו משתמשת MsgBox בפונקציה כדי להציג הודעת שגיאה קריטית בתיבת דו-שיח עם לחצני 'כן ' ו'לא '. לחצן 'לא ' מוגדר כתגובת ברירת המחדל. הערך שמחזירה MsgBox הפונקציה תלוי בלחצן שבו המשתמש בוחר. דוגמה זו מניחה שזהו DEMO.HLP קובץ עזרה המכיל נושא עם מספר הקשר עזרה השווה ל 1000- .
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "Do you want to continue?"
Style = vbYesNo + vbCritical + vbDefaultButton2
Title = "MsgBox Demonstration"
Help = "DEMO.HLP"
Ctxt = 1000
Response = MsgBox(Msg, Style, Title, Help, Ctxt)
If Response = vbYes Then ' User chose Yes.
MyString = "Yes" ' Perform some action.
Else ' User chose No.
MyString = "No" ' Perform some action.
End If