הגדרת אירועים ב-Visual Basic

ב-Microsoft Visual Basic, אירוע הוא הודעה שנשלחת על ידי אובייקט בתוך תוכנית ללולאת התוכנית הראשית, ומודיעה לו שמשהו קרה. ה"משהו" הזה יכול להשתנות מאוד, החל מטיימר שנגמר ועד לחיצת עכבר מצד המשתמש. התוכנית יכולה ללכוד את האירוע הזה ולהשתמש במידע שבתוכו כדי לקבל החלטות לגבי פעולות נוספות.

דוגמאות

Visual Basic מגיע עם כמות עצומה של אירועים מקודדים מראש, אם כי משתמשים יכולים גם לכתוב משלהם. אירועים אלה מכסים כמעט כל היבט של תפעול ואינטראקציה של התוכנית. כמה אירועים הקשורים לאינטראקציה בין סמן העכבר לפקד בטופס (כגון א לחצן) כוללים MouseClick, MouseDoubleClick, MouseEnter, MouseLeave, MouseWheel, MouseMove ו עכבר. אירועים מקבלים בדרך כלל שמות מאוד אינטואיטיביים, כדי להקל על קריאת הקוד של Visual Basic.

סרטון היום

מפעיל

אירועים יכולים להיות מופעלים על ידי מספר רב של מצבים. אירועים רבים הם תוצאה של אינטראקציה של המשתמש, כגון תנועת עכבר או כניסת מקלדת. מערכת ההפעלה Windows גם שולחת אירועים, ומודיעה לתוכנית מתי היא ממוזערת או כאשר חלון אחר חופף אותה. אובייקטים יכולים להפעיל אירועים משלהם, כאשר משתנה הגיע לערך מסוים, למשל. לבסוף, ניתן להניע אירועים על ידי תכנות ספציפי שלהם לעשות זאת, באמצעות מה שנקרא "הרמה".

הַצהָרָה

אירועים חדשים נוצרים באמצעות פקודת הכרזה. הקוד עבור זה נראה בדרך כלל משהו כמו הבא:

אפשרות אירוע ציבורי השתנתה (שם ByVal כמחרוזת, מספר ByVal כמספר שלם)

אירוע לדוגמה זה יצטרך להיות מתוכנת באופן ידני כדי להעלות עם שינוי אפשרות, וישלח שני ערכים לתוכנית: שם האופציה השתנה והערך שאליו היא הייתה מַעֲרֶכֶת.

העלאת אירועים

העלאת אירוע היא הפעולה של לגרום לו לקרות. ניתן לעשות זאת באמצעות שורת קוד אחת הממוקמת בתוכנית שלך, כגון:

RaiseEvent OptionChanged("אורך", 28)

זה יודיע לתוכנית על התרחשות האירוע, וישלח את המידע הכלול לנוהל מטפל, אם קיים כזה.

מטפלים

מטפל הוא הליך שהתוכנית קוראת לו כאשר מתרחש אירוע מסוים. לאחר מכן המטפל יכול להגיב למידע, לעבד אותו או לשלוח מידע למשתמש. ראשית יש לשייך את האירוע והמטפל שלו ביד, כדי שהתוכנית תדע שהאחד צריך לקרוא לשני. לדוגמה, כדי להוסיף מטפל לאירוע OptionChanged שלנו, נדרש משהו כזה:

AddHandler Obj. אפשרות השתנתה, כתובת שלי. OptionChangedHandler

לאחר מכן ניתן להוסיף את המטפל עצמו. מטפל עבור OptionChanged עשוי להיות כדלקמן:

Sub OptionChangedHandler (שם ByVal כמחרוזת, מספר ByVal כמספר שלם) MsgBox("הערך עבור " & Name. ToString & "שונו!) סיום משנה