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

פתח דבר

 

סטודנטים בכיתות של פרופסור בולדווין ל "תכנות Java בשלב ביניים" ב ACC  אחראים לדעת ולהבין את כל החומר בשיעור הזה. 1.1 JDK הותרה לפרסום  רשמית ב18 לפברואר 1997. שיעור זה נכתב במקור בשבעה למרץ 1997 תוך שימוש בתכנה ובתיעוד בחבילת הטעינה של 1.1 JDK. זה עודכן בהזדמנויות שונות מאז.

תכנית הדגימה בשיעור זה אושרה להיות מחוברת ומורצת כראוי תחת 1.2 JDK בשניים במרץ 1999.

 

הקדמה

 

זהו שיעור אחד בסדרה של שיעורים אשר מתרכזים בחבילה java.awt  אשר בה קיימת רב השימושיות להספקת ממשק - המשתמש לאפליקציה או ל applet שלך.

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

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

 

מנהל CardLayout

 

בשיעורים מוקדמים יותר למדנו אודות הצבה מוחלטת ושינוי גודל  של רכיבים במיכל, ולמדנו אודות מנהל ה     BorderLayout ו מנהל ה   FlowLayout ומנהל ה GridLayout. בשיעור זה נלמד על מנהל ה CardLayout.

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

הבנאים הינם:

CardLayout  יוצר מערך קלף חדש עם פערים של גודל 0.

CardLayout(int,int) יוצר מערך קלף עם הפערים הנקובים

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

הרשימה הבאה היא של מתודות אשר תנוצלנה בתכנית לדוגמא בשיעור זה:

first(Container)   -  דפדף לקלף הראשון.

last(Container)  -  מדפדף לקלף האחרון של המיכל הנקוב.

   -  next(Container)מדפדף לקלף הבא של המיכל הנקוב.

previous(Container) - מדפדף לקלף הקודם של המיכל הנקוב.

 show(Container, String) - מדפדף לשם הרכיב הנקוב במיכל הנקוב.

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

 11-11-03 / 19:55  נוצר ע"י רונית רייכמן  בתאריך 
 חזרה - הקודםהבא - חזרה 
תגובות הקוראים    תגובות  -  0
דרכונט
מהי מערכת הדרכונט?
אינך מחובר, להתחברות:
דוא"ל
ססמא
נושאי לימוד
חיפוש  |  לא פועל
משלנו  |  לא פועל
גולשים מקוונים: 4