» נושאי לימוד
» נושאי לימוד
יום שני 29 באפריל 2024
טיפול באירועים ב- JDK 1.1, בניית פונקצית מעבר מיקוד מקובלת
דף ראשי  מתקדמים  טיפול באירועים ב- JDK 1.1, בניית פונקצית מעבר מיקוד מקובלת גרסה להדפסה

טיפול באירועים ב- JDK 1.1, בניית פונקצית מעבר מיקוד מקובלת

 

הקדמה

 

שיעור זה נכתב במקור בפברואר 1997 תוך שימוש ב- JDK 1.1 בטא 3.

 

שיעורים קודמים דנו ב- requestFocus(), focusGained() , ו- focusLost() במודל נציג אירועים של JDK 1.1.

 

שיעור זה מיישם אפליקציה פרקטית של טיפול באירועים תוך שימוש בפונקציות אלה.

 

סקירה

 

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

 

JDK 1.1 תומך במעבר מיקוד ללא מאמץ מיוחד מצד המתכנת. הסדר בו המיקוד עובר דרך הרכיבים נקבע על ידי הסדר בו הרכיבים אותחלו וכנראה שלא ניתן לשנותו. (סביבות פיתוח אחרות מסוג GUI הן לעיתים קרובות יותר גמישות בעניין זה ).

 

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

 

ישנו סיכוי טוב שברוב המקרים תהיה מרוצה עם פונקצית מעבר המיקוד הסטנדרטי.

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

 

גם אם לא תרצה לעשות זאת, הדבר מספק הדגמה טובה לשימוש באספקטים מסוימים במודל נציג אירועים ב- JDK 1.1.

 

שיעור זה ישתמש בחומר הנלמד בשיעורים קודמים על מנת ליישם יכולת מעבר מיקוד מקובלת בה ניתן להשתמש במקשי  F12 ו- Shift-F12  על מנת להזיז את המיקוד דרך סידרת רכיבים ויזואליים.

 

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

 

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

 

התוכנית תהיה בנויה כך שבמאמץ תכנות צנוע נוסף יאפשר את שינוי הסדר בו המיקוד עובר בין הרכיבים בזמן ההרצה.

 

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

 

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

 

מן הסתם, את יכולות אלה שהוסרו ניתן להחזיר עם מאמץ תכנותי קל.

 

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