» נושאי לימוד
» נושאי לימוד
יום שני 29 באפריל 2024
תוכנית לדוגמא
דף ראשי  מתקדמים   טיפול בארועים במחלקות מורחבות ללא אובייקטי מאזין  תוכנית לדוגמא גרסה להדפסה

 

תוכנית לדוגמא

 

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

 

 התוכנית מרחיבה שדה טקסט לסוג חדש של שדה של טקסט, רכיב הנקרא שדה טקסט נומרי(NUMERICTEXTFIELD). אוביקטים של ה NUMERICTEXTFIELD יקבלו קלט מספרי. אם המשתמש מנסה להכניס כל תו אחר חוץ מ 0 עד 9 אזעקה נשמעת ( בהנחה ש המערכת תומכת במערכת שמע ) והתו לא מתקבל על ידי המערכת בזמן ריצה.

 

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

 

בסך הכל שלושה רכיבים אותחלו ונוספו לפריים. אחד האוביקטים הוא האוביקט החדשNUMERICTEXTFIELD שתואר לעיל.

 

האוביקט שני הוא כפתור סטנדרטי. האוביקט השלישי הוא תווית.

 

כאשר המשתמש לוחץ על הכפתור, מחרוזת הנתונים בתוך ה NUMERICTEXTFIELD מועתקת לתוך התווית.

 

אם המשתמש לחץ על כפתור הסגירה על הפריים, התוכנית מסתיימת.

 

הרכיב המורחב הנקרא NUMERICTEXTFIELD נוצר על ידי הרחבת מחלקת ה TEXTFIELD המספקת את היכולת להשתמש במקרי לחיצת מקשים לסנן את התוים שנכנסים לתוך ה NUMERICTEXTFIELD על ידי המשתמש. רק מספרים עוברים דרך המסנן.

 

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

 

במידת-מה, מקרים הקשת מקש מאופשרים בכל האוביקטים של המחלקה ע"י שימוש ב ENABLEEVENTS()  עם KEY_EVENT_MASK. לאחר שזה נעשה, הפקודה הנקראת PROCESSKEYEVENT() נקראת על ידי המערכת כאשר נלחץ מקש באובייקט של המחלקה. הפונקציה הנקראתPROCESSKEYEVENT( )  נדרסת כדי לספק את כל העיבוד ההכרחי כדי לסנן  תווים לא מיספריים ללא הדרישה ליצור אוביקט מאזין נפרד.

 

העיבוד בתוך ה PROCESSKEYEVENT()  הוא ישיר. כאשר קורה הארוע KEY_TYPED , התו שנלחץ  נעצר ונבחן כדי לוודא שהוא אחד התוים המיספריים. אם לא, הוא מוחלף על ידי הערך 0. זה לא ערך חוקי, לכן המערכת תשמיע צלילים ותסרב לקבל את אותו לתוך הרכיב.

 

כאשר אתה דורס את אחד הארועים  PROCESSXxxxEVENT() , אתה צריך תמיד לקרוא לאותו ארוע באבא ולהעביר את אוביקט הארוע כפרמטר. זה מבטיח שכל העיבודים שבברירת המחדל יתקיימו.

 

 התוכנית נבחנה ב JDK 1.1 מתחת ל WIN95.

 

 31-10-03 / 14:34  נוצר ע"י רונית רייכמן  בתאריך 
  טיפול בארועים במחלקות מורחבות ללא אובייקטי מאזין - הקודםהבא - חלקי קוד מעניינים 
תגובות הקוראים    תגובות  -  0
דרכונט
מהי מערכת הדרכונט?
אינך מחובר, להתחברות:
דוא"ל
ססמא
נושאי לימוד
חיפוש  |  לא פועל
משלנו  |  לא פועל
גולשים מקוונים: 6