» נושאי לימוד
» נושאי לימוד
יום שני 29 באפריל 2024
מבט כללי
דף ראשי  מתקדמים   טיפול בארועים ((EVENT HANDLING ב- JDK 1.1 אירועי Scrollbar  מבט כללי גרסה להדפסה

 

מבט כללי

טיפול באירועים באובייקט Scrollbar שונה מטיפול באירועים בשיעורים הקודמים מכמה בחינות. לדוגמא הבה נשווה

את ה-Scrollbar  עם העכבר.

 

כדי ליצור אובייקט listener בשביל העכבר אפשר לממש את מנשק MouseListener או להרחיב את המחלקה MouseAdapter .

 

אבל כדי ליצור אובייקט listner בשביל ה-Scrollbar אי אפשר לממש מנשק Scrollbarlistner או להרחיב את המחלקה

ScrollbarAdapter מפני שהם אינם קיימים.

 

אלא יש לממש את מנשק AdjustmentListener , המתודה המוצהרת במנשק זה מקבלת כפרמטר אובייקט AdjustmentEvent . זהו אחד מהאירועים הסמנטים (  (semantic events,(בניגוד לאירועי low-level) בדומה

ל-,ActionEvent   ItemEvent וכן TextEvent.

 

שים לב שלא קיימת מחלקה AdjustmentAdapter . היא אינה נצרכת מכיוון שמנשק  AdjustmentListener מצהיר

רק על מתודה אחת:

 

 public abstract void adjustmentValueChanged(AdjustmentEvent e)
 
 
 
 

מתודת adjustmentValueChanged() נקראת כאשר ערך האובייקט הניתן להתאמה adjustment)) (אובייקט

ה-Scrollbar במקרה זה) השתנה.

 

זכרו שישנם 5 אירועי עכבר שונים המוצהרים במנשק MouseListener:

  • mouseClicked(),
  • mouseEntered(),
  • mouseExited(),
  • mousePressed()
  • mouseReleased().

 

למרות שלא דנו בהם ישנם 2 סוגים נוספים של אירועי עכבר המוצהרים במנשק MouseMotionListener :

  • mouseDragged()
  • mouseMoved()

 

כל אחד מסוגים שונים אלה של אירועי עכבר מיוצג על ידי  הצהרת מתודה באחד משני המנשקים המוגדרים ליצירת

מחלקות listener   לפעילות העכבר. אתם "דורסים" את המתודה/ות בשביל האירועים שאתם מעונינים בהם.

 

ישנם 5 סוגים שונים של אירועי התאמה adjustment)) המתאימים ל-5 הדרכים להזיז את הבועה באובייקט ה-Scrollbar.

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

 

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

ערך ה- Scrollbar נקבע על ידי מיקום הבועה על ה- Scrollbar.

 

המחלקה AdjustmentEvent מגדירה מספר מתודות המשמשות להוצאת מידע מהאובייקט אם אתם זקוקים לגישה אל

מידע זה. נושא זה יפורט יותר בהמשך.

 

הסוגים של אירועי התאמה (המתאימים ל-5 השיטות הפיזיות להזיז את הבועה באובייקט ה-Scrollbar ) מוגדרים כמשתנים

סטטיים במחלקה  AdjustmentEvent (דבר זה דומה לגישה שהייתה במודל האירוע המוקדם יותר ב- JDK 1.0.2.

חמשת הסוגים השונים של אירועי התאמה ויחסיהם להזזת הבועה בתוך ה-Scrollbar  הם:

 

Scrollbar   - לחיצה על הכפתור בקצה אחד של ה-UNIT_INCREMENT

 Scrollbar   - לחיצה על הכפתור בקצה השני של ה-UNIT_DECREMENT

  - לחיצה על הרווח שבין הבועה לבין כפתור אחד  BLOCK_INCREMENT

   - לחיצה על הרווח שבין הבועה לבין הכפתור השני BLOCK_DECREMENT

 - גרירת הבועה TRACK

כפי שצויין שני הסוגים UNIT   נוצרים על ידי לחיצה על אחד הכפתורים בקצות ה-Scrollbar .

 

שני הסוגים BLOCK נוצרים על ידי לחיצה על אחד הרווחים בין הבועה לקצה ה-Scrollbar .

 

אירוע TRACK נוצר על ידי גרירת הבועה.

 

קיימות מתודות לקביעת פרמטרים שונים של ה-Scrollbar כולל הטווח, רוחב הבועה (מופיע בתיעוד כ-"גודל עמוד" או

"עמוד נראה" visible) , גודל ההוספה (increment) או ההורדה (decrement) של יחידה(UNIT)  או בלוק (BLOCK) , וכו'

 

אפשר לטעון שגישת ההתאמה adjustment))  הזו שנראית למטרות כלליות, נועדה לתמוך במשפחה שלימה של מרכיבים

שפועלים על בסיס התאמה. אבל,חיפוש מהיר בחבילת אינדקס התיעוד של  JDK 1.1.3 לא הראה מרכיבים אחרים

המשתמשים במנשק התאמה.

אולי אובייקטים אחרים הניתנים להתאמה מתוכננים בגרסאות עתידיות של    AWT .

 

 18-10-03 / 00:22  נוצר ע"י רונית רייכמן  בתאריך 
  טיפול בארועים ((EVENT HANDLING ב- JDK 1.1 אירועי Scrollbar - הקודםהבא - התכנית לדוגמה 
תגובות הקוראים    תגובות  -  0
דרכונט
מהי מערכת הדרכונט?
אינך מחובר, להתחברות:
דוא"ל
ססמא
נושאי לימוד
חיפוש  |  לא פועל
משלנו  |  לא פועל
גולשים מקוונים: 4