ניתן להמחיש את השימוש באירועים באמצעות הדגמה של מחלקת סטודנט שבה נמצאים כל השדות העוסקים בו כמו פרטים אישיים, תמונה, כתובת, מוסד לימודי וכדומה, שבה היה מתאים שתהיה פונקציה שתבדוק אחת ליום את תחולת יום ההולדת של הסטודנט לפי שדה "תאריך לידה", ותזניק ביום המתאים אירוע מובנה "בעת יום הולדת" עם פרטי הסטודנט, למחלקה המממשת את מחלקת סטודנט. המחלקה המממשת תחליט על דרכי מימוש האירוע: שליחת מסרון ברכה, הצגת ברכה על גבי מסך במסדרון, או משלוח אימייל יידוע בעניין יום ההולדת לכל חברי כיתתו של הסטודנט. באופן זה קיימת חלוקה מובנת וברורה, וישנה הצמדה הגיונית בין שדה "יום הולדת" לבין אירוע "בעת יום הולדת". הבדיקה עצמה של יום ההולדת תעשה במחלקת סטודנט, אך המימוש של יום ההולדת יתבצע במחלקה המארחת את מחלקת סטודנט, כך גם יכולות להיות כמה מחלקות מארחות למחלקת סטודנט, שכל אחת תממש בצורה אחרת את אותו האירוע.
סיווג האירועים ודרכי מימושם.
האירועים בדרך כלל מסווגים כאירועי משתמש וכאירועי מערכת. אירועים יכולים להיווצר על ידי המשתמש לרוב באמצעות מקלדת ועכבר (או מסך מגע). אלו הם האירועים הנפוצים ביותר: הקשה במיקום מסוים על פני המסך באמצעות העכבר, לחיצה או שחרור של מקש מקלדת וכולי. בנוסף יכולים להיווצר אירועים שהמערכת יוצרת מעצמה בתזמון קבוע מראש או בתגובה לפעילות. למשל אירועי שעון באמצעות הפעלת טיימר, שמופעלים במועד קבוע מראש, כמו ניקוי הדיסק ואיחויו או ביצוע פעולת גיבוי. וכן אירועים בתגובה לפעילות חיצונית כמו קבלת דואר אלקטרוני, כיבוי המחשב או קבלת מידע מחיישן מסוים, למשל התראה ממצלמה על גילוי תנועה.
בשפות מונחות עצמים נהוג שלכל עצם יש אירועים שייחודיים לו, בצד האירועים שיכולים להיות משותפים לכולם כמו הקלקת עכבר או מקלדת. למשל לטופס יכול להיות אירוע בעת טעינת טופס, סגירת טופס ושינוי גודלו או מזעורו או בעת שהטופס "לוכלך" כאשר טקסט הוזן לאחד מהפקדים שבו. ואילו לפקד טקסט שמשולב בטופס יוכל להיות אירוע של 'בעת שינוי הטקסט' שבפקד או 'בעת שהתוכן שמוזן איננו תואם למסכת הקלט שלו'. ואילו לפקד fileWatcher בדוט נט יהיה אירוע בעת יצירת קובץ בספריה מסוימת.
תכנות מונחה אירועים אופייני ליישומים בעלי ממשק משתמש גרפי, אך אינו בלעדי להם. ישנן סביבות כמו ToolBook שבהן יש ניהול היררכי של אירועי משתמש, שיכולים ל"טפס" מאובייקט פרטי כפקד לאובייקט כללי שמכיל אותו כמו חלון עד לרמת היישום כולו, ולהילכד בכל שלב ושלב ביישום כולו. דבר שמאפשר ניהול מרכזי של כלל האירועים שביישום. באקסס אירוע יכול לטפס מפקד לטופס המכיל אותו, ובו הוא נעצר. ב-Winform בדוט נט אירוע משתמש נעצר כבר בפקד ולא עולה אף לרמת הטופס.
בבסיסי נתונים משתמשים בפרדיגמה זו באמצעות פעילות הטריגרים, כאשר אפשר ליצור שגרות שונות שיפעלו בעת פעילות על הטבלה: יצירת רשומה, עדכון רשומה או מחיקתה. הטבלה כאילו ממתינה שיבצעו בה פעולות ומגיבה בהתאם לפעילות השונה עליה. למשל בעת יצירת רשומה חדשה בטבלה רישום שם המשתמש והזמן בטבלה אחרת. ריכוז הפעילות במקום זה יכול למנוע דרכי פעולות שונות על הטבלה, ולהבטיח שמכל מקום שתעשה פעילות על הטבלה תהיה תגובה ותוצאה דומה.
דוגמה.
בדוגמה הבאה בשפת VB.NET ניתן לראות שתי מחלקות שמעבירות אירוע מאחת לשנייה. מחלקה Form1 היא המחלקה המארחת, ומחלקה People היא המחלקה המתארחת.
במחלקת People מוגדרת פונקציה CheckBirthDate, שבודקת אם חל היום יום ההולדת, ומזניקה את האירוע BirthDate במידה והתשובה חיובית, עם חישוב של הגיל.
ובמחלקת Form1 ממומש אובייקט של People שלוכד את האירוע BirthDate בעת שהוא יוזנק במחלקת People באמצעות Handles. הדבר מאפשר לכמוס את הבדיקה במחלקת People, ולא להכביד על מחלקת Form1 בבדיקות מיותרות.
Public Class Form1
Private WithEvents people1 As People = New People()
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
people1.DateOfBirth = #8/30/1999#
End Sub
Sub BirthDate(ByVal sender As Object, ByVal age As Integer) Handles people1.BirthDate
Console.WriteLine(age.ToString())
End Sub
End Class
Public Class People
Public Property DateOfBirth As Date
Public Event BirthDate(ByVal sender As Object, ByVal age As Integer)
Private Sub CheckBirthDate() ' Operate by timer once a day
If (DateOfBirth.Month = Date.Today.Month And DateOfBirth.Day = Date.Today.Day) Then
RaiseEvent BirthDate(Me, DateDiff(DateInterval.Year, DateOfBirth, Date.Today))
End If
End Sub
End Class
סביבות תכנות.
להלן מספר דוגמאות לסביבות תכנות המאפשרות יישום קל של תכנות מונחה אירועים.
הספר הלבן (1939)
הספר הלבן של 1939 (מכונה גם הספר הלבן של מקדונלד) או בשמו הרשמי "פלשתינה, הצהרת מדיניות", הוא מסמך מדיניות שהוצג לפרלמנט הבריטי על ידי שר המושבות מלקולם מקדונלד במאי 1939. על פי הספר הלבן בכוונת הבריטים להקים בארץ ישראל מדינה אחת עבור כל תושביה, היהודים והערבים, להגביל באופן חמור את עליית היהודים ולהגביל משמעותית רכישת קרקעות בבעלות ערבית, בידי יהודים. המסמך פורסם ב-17 במאי 1939 ואושר על ידי בית הנבחרים ב-23 במאי באותה השנה, ברוב של 281 מול 181. המסמך התקבל בזעם על ידי הישוב העברי בארץ ישראל שראה בו בגידה של הבריטים והפרה של התחייבויותיהם כפי שבאו לידי ביטוי בהצהרת בלפור. המסמך זכה לכינויי הגנאי ספר המעל או הספר השחור. ההגבלות על רכישת הקרקעות עוגנו בחוק הקרקעות שפורסם על ידי הנציב העליון ב 28 בפברואר 1940.
מסמך זה היה השלישי במספר, וקדמו לו הספר הלבן הראשון שפורסם על ידי וינסטון צ'רצ'יל בשנת 1922, והספר הלבן של פאספילד משנת 1930.
הספר הלבן של מקדונלד פורסם בעקבות כישלון ועידת השולחן העגול ועל רקע המשך מאורעות תרצ"ו-תרצ"ט.
עיקרי הספר.
עיקרי "הספר הלבן" היו:
בעקבות הספר הלבן צומצמה העלייה היהודית ולאחר שפורסמו תקנות העברת קרקעות 1940, היו מפעלות גאולת הקרקע הציוניים בארץ ישראל, לכאורה, לכמעט בלתי אפשריים. תקנות אלו לא נאכפו וקק"ל רכשה מפרסום תקנות אלו ועד קום המדינה 420,000 דונם.
הספר הלבן והצהרת בלפור.
הספר הלבן נתן פרשנות מצמצמת מאוד למונח "בית לאומי לעם היהודי" שהופיעה בהצהרת בלפור, (ששולבה מאוחר יותר בהחלטות ועידת סן רמו) ועוגן בכתב המנדט שאושר על ידי חבר הלאומים בשנת 1922. בספר הלבן נקבע כי ההתחייבות להקמת "בית לאומי" אינה התחייבות להפיכתה של ארץ ישראל למדינה יהודית. הפרשנות כאילו משמעות המושג "בית לאומי" הוא מדינה יהודית ניתנה בחוסר סמכות. הממשל העצמי ממנו נהנה היישוב היהודי בארץ ישראל בזמן פרסום הספר - הכולל מוסדות פוליטיים ודתיים כמו ההסתדרות, הסוכנות היהודית והרבנות הראשית, התיישבות עירונית וכפרית, מערכת השכלה ועיתונות בעברית - היא כבר מהווה את "הבית הלאומי" במלואו ואל ליהודים לצפות לקבל יותר מזה.
כמו כן בריטניה התחייבה בהצהרת בלפור ובכתב מהמנדט שמעמדם וזכויותיהם של קבוצות אחרות לא יפגעו. ומכוון שהעלייה היהודית ורכישת הקרקעות מתחילה לפגוע בערבים וגורמת לאלימות שפוגעת בכלכלה ובביטחון, הם מחויבים להגבילה.
כך, מנקודת ראותה של ממשלת בריטניה, הספר הלבן לא היווה ביטול של הצהרת בלפור אלא רק הבהרת משמעותם של ביטויים דו-משמעיים שהופיעו בהצהרה. לעומת זאת, ראשי התנועה הציונית ראו בספר הלבן בבחינת ביטול בפועל של הצהרת בלפור והתכחשות של בריטניה להבטחותיה.
התגובות לספר.
הספר, שכונה בפי דוד בן-גוריון "ספר המעל", היה בגדר שינוי מוחלט של המדיניות הבריטית שראשיתה בהצהרת בלפור מ-1917 והשלמת הנסיגה ההדרגתית מהמדיניות הפרו-ציונית המקורית של בריטניה. לפיכך, עורר הספר והתקנות שנלוו אליו תגובת זעם ומחאה ביישוב ובתנועה הציונית. היישוב הכריז על שביתה כללית בכל הארץ ובערים הגדולות נערכו הפגנות ותהלוכות מחאה.
כהתרסה נגד הספר הלבן, הוקמו בחודש מאי 12 נקודות יישוב חדשות בארץ ישראל.
בעקבות הספר הלבן התאחד היישוב היהודי בארץ נגד הבריטים ונגד הספר הלבן. אך משפרצה מלחמת העולם השנייה, החליטו "ההגנה" והאצ"ל להפסיק את הפעולות נגד הבריטים ולהמשיך אך ורק בפעולות ההתיישבות והעלייה הבלתי-לגאלית. בן-גוריון טען אז, כי "עלינו לעזור לאנגלים במלחמה כאילו לא היה ספר לבן, ועלינו לעמוד נגד הספר הלבן כאילו לא הייתה מלחמה". על רקע החלטה זו של האצ"ל פרשה ממנו תנועת "האצ"ל בישראל", אשר לימים התפצלה אף היא ויצאה ממנה תנועת הלח"י ("לוחמי חירות ישראל").
גם הערבים תושבי ארץ ישראל התנגדו ל"ספר הלבן", ודרשו תחת זאת הפסקה מוחלטת של היתר העלייה מאירופה, ביטול הצהרת בלפור והחלטות ועידת סן רמו על ארץ ישראל כבית הלאומי של העם היהודי.
המופתי של ירושלים אמין אל-חוסייני דחה את הספר משום שלא העניק לערבים מדינה משלהם.
גם בבריטניה הושמעה ביקורת לספר, הן מצד האופוזיציה והן מצד המפלגה השלטת, שהתנגדו למדיניות של מקדונלד. בין הבולטים שבמתנגדים היו הנציב העליון לשעבר הרברט סמואל ושר המושבות לשעבר וינסטון צ'רצ'יל.
העיתונות הבריטית תיארה אותו כ"הוגן", "הגיוני", "סביר" ו"פעולה מדינית נבונה מאין כמוה". ג'פרי דוסון, עורך הטיימס, כינה אותו "איוולת" וה"מנצ'סטר גרדיאן" הגדיר אותו "אסון".