» נושאי לימוד
» נושאי לימוד
יום שני 29 באפריל 2024
תכנית לדוגמה
דף ראשי  מתקדמים  Component Events  תכנית לדוגמה גרסה להדפסה

תכנית לדוגמה

תכנית זו ממחישה אירועי רכיב, ומפעילה את המתודות componentShown() (רכיב-נראה) ו componentHidden() (רכיב מוסתר) של ממשק ComponentListener תחת שליטת תכנית. המשתמש יכול להפעיל את המתודות componentMoved() ו- componentResized() ע"י הזזה ושינוי גודל של אובייקט המסגרת על המסך.

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

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

פלט טיפוסי מהתכנית מוצג בפירוט התכנית המובא בהמשך.

תכנית זו נבחנה תוך שימוש ב 1.1.6 JDK תחת חלונות 95.

 

מקטעי קוד מעניינים

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

 

class Event34 extends Frame implements ComponentListener{

 

 

 

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

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

 

    this.addComponentListener(this);

 

 

 

המקטע הבא מראה הצהרות הגורמות למתודות componentShowm()  ו- componentHidden() של ממשק ComponentListener להיקרא פעמים אחדות ברצף.        

    this.setVisible(true);//invoke shown event
    this.setVisible(false);//invoke hidden event
    this.setVisible(true);//invoke shown event

 

 

 

 

 

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

המקטע האחרון מראה את ההגדרה של אחת המתודות של ממשק הComponent Listener . ההגדרות  של כל ארבעת המתודות הן זהות, במהותן  כך שרק אחת מהן מוצגת כאן .  

  public void componentResized(ComponentEvent e){
    System.out.println("Resized\n" + e.getSource());
  }//end componentResized()

 

 

 

 

 

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

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