JDK 1.1 שוחרר באופן רשמי 18/02/1997. השעור הזה נכתב בתחילה ב 5/3/1997 משתמש בתוכנה ותיעוד JDK 1.1 חבילה להורדה. עדכונים נוספים נעשו מאז.
הקדמה
שיעור זה הוא בעיקר הצגה מוקדמת של מה שאתה יכול לצפות למצוא בשעורים העוקבים. שיעור זה והשעורים הבאים מתרכזים בחבילת התוכנה JAVA.AWT היכן שרוב הפונקציונאליות קיימת בשביל לספק את קשר המשתמש לאפליקצייה שלך או תוכנה.
שים לב שה AWT היה החלק של ג'אווה שהתנסה בשינויים הכי משמעותיים בשחרור של ערכת הפיתוח של ג'אווה (DEVELOPMENT KIT), גירסה 1.1. הרבה ממה שלמדת על גירסה 1.0 הוחלף בעזרת מונחים חדשים. שעורים אלו יתרכזו בשימוש של JDK 1.1 במקום JDK 1.0.
ממשק של תוכנית מחשב מודרנית כולל טכניקות להפעיל את החושים. אנחנו משתמשים באיקונים, תגיות טקסט, תמונות, קול, גרפיקה של חדר ההמנהלים, וכו'.
שעור זה והבאים אחריו יתרכזו באספקטים האלו של הקשר שאנחנו בדרך כלל נתיחס אליו כממשק גרפי למשתמש (Graphical User Interface – GUI). אנחנו נעזוב אספקטים אחרים של הממשק, כגון קול, להיות מכוסים בשעורים שבאים לאחר-מכן.
הרבה מתוכניות הדוגמה בשעורים המוקדמים על טיפול באירועים עשו שימוש ב GUI פשוט בלי לספק הרבה הסברים על הקוד. בשעורים הבאים נשתדל לתקן את המצב הזה על ידי הסברת הרבה אספקטים של יצירת GUI.
חבילת המחלקות של Java.awt
כמו שהוזכר לעיל, הרבה מהחומר בשיעור זה והבאים אחריו יתבססו על מחלקות החבילה JAVA.AWT.
החל מ 5/3/97, מוגדרות יותר מחמישים מחלקות בחבילת ה JAVA.AWT. מכמות זו, אנחנו בעיקר התיחסנו לאלה שדנו בנושאים הבאים. המחלקות מחולקות לקבוצות בסדר כללי על פיו נלמד אותם ויוצגו בדרך כלל כשעור נפרד. אולם, כמה מהקבוצות כל כך גדולות שזה יהיה הכרחי לחלק את הקבוצה ליותר משעור אחד.
אנחנו גם נעשה שימוש מסיבי במחלקות שבחבילת JAVA.AWT.EVENT, אבל אתה כבר מכיר את רוב המחלקות הללו מהלימודים בשעורים הקודמים של טיפול באירועים ב JDK 1.1.
סידור מרכיבים במיכלים
אנו יכולים לשים את הרכיבים שלנו במכילים שלהם תוך כדי שימוש בקואורדינטות מדויקות, או שאנחנו יכולים להשתמש באחד מכמה מנהלי הסידור כדי לעשות את העבודה. השימוש במנהלי הסידור נחשב על ידי רבים להיות הגישה היותר בטוחה כי גישה זו נוטה לפצות באופן אוטומטי הבדלים ברזולוציה בין פלטפורמות שונות.
מנהלי הסידור השונים מוגדרים במחלקות ויש להם את השמות הבאים :
BorderLayout
CardLayout
FlowLayout
GridBagLayout
GridBagConstraints
GridLayout
בתוספת למחלקות ניהול התצוגה, יש סוג הנקרא GridBagConstraints שמשומש לעבוד עם הGridBagLayout כמו מחלקה הנקראת Insetsשמשומש לעבודה עם מחלקות אחרות.
מחלקות המכילים
התרשים של ההירארכיה הבאה מראה להיכן המחלקות של המכילים חלון, פאנל, ופריים נכנסים לתוך הירארכיית הירושה הכוללת. אנו נדון בשלושת סוגים אלו כקבוצה, וגם נדון במערכת היחסים שלהם עם אובייקטי האבות שלהם: מכיל, קומפוננטה, ואובייקט.
java.lang.Object | +----java.awt.Component | +----java.awt.Container | +----java.awt.Panel | +----java.awt.Window | +----java.awt.Frame |
בדרך כלל, סוגים אלו משמשים להכיל רכיבים של מחלקות אחרות.
קומפוננטות הקלט שאינן טקסט
הרכיבים בקבוצה הבאה בדרך כלל נותן למשתמש להעביר ( לא טקסט ) מידע לתוכנית, אף על פי שבחלק מהמקרים הם יכולים גם לשמש לפלט מידע למשתמש גם כן. לא טקסט בהקשר הזה אומר שהמשתמש יכול להעביר מידע של קלט בלי הדרישה להשתמש במקלדת.
כל המחלקות הללו מרחיבים את המחלקה Component.
כפתור - Button
תיבת סימון – Checkbox
בחירה - Choice
רשימה - List
המחלקה הנקראת CHECKBOXGROUP לא הרחיבה את COMPONENT, אלא הרחיבה את OBJECT במקום. כמו שהשם מרמז, אוביקטים של המחלקה זו יכולים לשמש כדי לקבץ תיבות סימון כך שהם מתנהגים באופן מיוחד בשיתוף.
השעור בלא קלט של טקסט ידון במחלקות שנרשמו לעיל.
מרכיבי קלט ופלט ע"י טקסט
השעור בקלט ופלט של טקסט יטפל במחלקות שדה טקסט(TEXTFIELD) ואיזור טקסט(TEXTAREA) וכן במחלקת תווית(LABEL).
מחלקת שדה הטקסט יכול לשמש כדי ליצר רכיב שיקבל שורה אחת של טקסט של קלט. זה יכול גם להיות משומש להציג קו אחד של טקסט באופן ש " לא ניתן לעריכה ".
מחלקת איזור הטקסט יכולה לשמש כדי ליצר רכיב שיקבל מספר שורות של טקסט מהמשתמש כקלט. זה גם היא יכולה להציג מספר שורות של טקסט באופן ש " לא ניתן לעריכה ".
שדה טקסט ואיזור טקסט מרחיבות את TEXTCOMPONENT שמרחיב את COMPONENT.
מחלקת התווית יכולה לשמש כדי להציג שורת טקסט. רכיב זה באופן קבוע לא ניתן לעריכה ותכונה הזאת לא יכולה להשתנות על ידי התוכנית.
השימוש בגוללים(Scrollbar) להכנסת מידע
שעור קודם בסידרה של טיפול באירועים דן בשימוש מחלקת הגוללים בצורה עמוקה. אנחנו ניתן לדיון זה להספיק ללימוד של מחלקת הגוללים.
דיאלוגים (Dialogs)
בשיעור זה על דיאלוגים, אנו נחקור את השימוש במחלקת הדיאלוג. זה מחלקה שמייצרת דיאלוג, או חלון שלוקח קלט מהמשתמש.
שעור זה יחקור גם את מחלקת ה FileDialog. מחלקה זו יכולה לשמש כדי ליצר אוביקט שמציג דיאלוג של בחירת קובץ.
קומפוננטת ה Canvas
מחלקת ה CANVAS היא רכיב גנרי שצריך להיות קבוצת המשנה כדי להוסיף פונקציונאליות. אנחנו נחקור שימושים שונים של הסוג הזה בשעור על רכיב ה- CANVAS.
תפריטים
הירארכיית הירושה של תפריטים כפי שמוצג מתחת. .
java.lang.Object | +----MenuShortcut | +----java.awt.MenuComponent | +----java.awt.MenuBar | +----java.awt.MenuItem | +----java.awt.Menu | +----java.awt.CheckboxMenuItem | +----java.awt.PopupMenu |
כמו שאתה עלול לחשוד מלהסתכל בתרשים הזה, ישנם מספר נושאים מענינים בקשר לתפריטים, ואנחנו נחקור את העניינים האלו בשעור על תפריטים.
גרפיקה – עבודה עם צורות
מחלקת ה Graphics, שמרחיבה את מחלקת ה OBJECT, היא מחלקת הבסיס לכל המחלקות של הגרפיקה נותנים לאפליקצייה לצייר ברכיבים או הצגת תמונות.
אובייקט Graphics אוסף את המידע על המצב שצריך למסור לפעולות השונות שג'אווה תומכת בהם. המידע על מצב כולל :
הקומפוננטה עליה מציירים
תרגום המקור למסירת והצמדת הקואורדינטות.
המצמיד הנוכחי
הצבע הנוכחי
הפונט הנוכחי
פונקציית הפעולה על הפקסל הלוגי הנוכחי (XOR או צביעה)
הבע המתחלף ע"פ ה XOR (ראה setXORMode)
גרפיקה הוא נושא גדול שיקיף כמה שעורים שונים.
השעור הראשון בסידרה בגרפיקה יחקור את השימוש של המחלקות הבאות להתגשמות של אוביקטים מסוג שיזוהה על ידי שם המחלקה.
מלבן
נקודה
מצולע
ממד
גרפיקה – עבודה עם פונטים
השעור בגרפיקה ופונטים יתרכז על המחלקות פונט(Font) ומטריצת הפונט (FontMetrics). כמו שאתה יכול כנראה לשער מהשמות, המחלקות האלו נותנות לך לשלוט בפונט של טקסט של פלט, וגם נותנות לך לקבוע את הגודל של טקסט שייוצר עם פונט מיוחד.
גרפיקה – עבודה עם תמונות
שעור זה על תמונות יתרכז במחלקות מהרשימה הבאה:
תמונה (Image)
עוקב המדיה (MediaTracker)
צבע (Color)
צבע המערכת (SystemColor)
גליל השמשה (ScrollPane)
עבודה עם מחלקת הדפסות (Print Job)
כמו השם מרמז, השעור הזה יתיחס ליכולת ההדפסה החדשה של JDK 1.1.
עבודה עם מחלקת הערכת הכלים (ToolKit)
מחלקת ה ToolKit משמשת לקשר את המחלקות המופשטות של AWT ליישום של רכיבים מיוחדים ב toolkit. ישנן שיטות מענינות במחלקה זו ונו נתבונן בהם.
סקירה
מאחר ושעור זה הוא בעיקר הצגה מוקדמת של השיעורים שבאים לאחר-מכן, אין סיבה לספק חומר חזרה לשעור הזה.