התכנית לדוגמא "plain vanilla"
האפליקציה הבאה, המכונה Layout04, יוצרת אוביקט ויזואלי של “Plain Vanilla” ע"י הצבת חמישה כפתורים לא פעילים על אובייקט מסגרת תוך שימוש במנהל FlowLayout. (הכפתורים אינם פעילים כיוון שאין אובייקטי מאזין שנוצרו ונרשמו על הכפתורים).
דיון בתוכנית הראשונה
אובייקט ה FlowLayout נבנה עם יישור לשמאל, פער אופקי של 10 פיקסלים בין רכיבים, ופער אנכי של 15 פיקסלים בין רכיבים. היישור והפערים הוגדרו ע"י שימוש בגרסה של הבנאי אשר מאפשר ציון של פרמטרים אלה. אפשרי גם לשנות פרמטרים אלה בזמן הרצה תוך שימוש במתודות של מחלקת FlowLayout.
שינוי גודל של מסגרת באופן ידני בזמן הרצה גורם לעמדות של הרכיבים להסתגל אוטומטית תוך הנחת המספר המקסימלי האפשרי של רכיבים בשורה הראשונה.
לשם הפשטה, לא נוצרו או נרשמו כל מאזיני-אירוע. לכן תיבת ה"סגירה (close)" אינה פעילה ותצטרך להשתמש במתודה אחרת כלשהי לסיים את התכנית.
תכנית נבחנה תוך שימוש ב 1.1 JDK אשר רצה תחת חלונות 95.
מקטעי קוד מעניינים בתכנית ראשונה
אין הרבה קוד לדון בו בתכנית זו. ההצהרה הראשונה יוצרת אובייקט מסגרת חדש. ההצהרה השנייה מכוונת את מנהל השרטוט לאובייקט המסגרת להיות מערך-זרימה FlowLayout עם יישור לשמאל, פער אופקי של 10 פיקסלים בין רכיבים ופער אנכי של 15 פיקסלים בין רכיבים.
ההצהרה השלישית היא טיפוסית להצהרות המנוצלות להוסיף את הרכיבים לאובייקט המסגרת
Frame myFrame = new Frame( "Copyright 1997, R.G.Baldwin"); myFrame.setLayout(//align,Hgap,Vgap new FlowLayout(FlowLayout.LEFT,10,15)); myFrame.add(new Button("First")); |
רישום שלם של התכנית מובא ביחידה הבאה.
רישום תכנית של התכנית הראשונה
יחידה זו כוללת רישום שלם של התכנית.
תכנית זו מתוכננת להיות מהודרת ומורצת תחת 1.1 JDK . תכנית זו יוצרת אובייקט ויזואלי "Plain Vanilla" ע"י הנחת חמישה אובייקטי כפתור לא פעילים על אובייקט מסגרת תוך שימוש במנהל ה FlowLayout . הכפתורים אינם פעילים משום שלא נוצרו ולא נרשמו כל אובייקטי מאזין לאירוע על הכפתורים. אובייקט ה FlowLayout בנוי עם יישור לשמאל, פער אופקי של 10 פיקסלים בין רכיבים, ופער אנכי של 15 פיקסלים בין רכיבים.
שינוי הגודל של אובייקט המסגרת גורם לעמדות הרכיבים להסתגל אוטומטית. לשם פשטות, לא נוצרו ונרשמו כל מאזיני אירוע. לפיכך, תיבת ה"סגור" אינה פעילה ותצטרך להשתמש במתודה אחרת כלשהי לסיים את התכנית. התכנית נבחנה תוך שימוש ב 1.1.3 JDK בהרצה תחת חלונות 95.
להן פירוט התוכנית .
/*File Layout04.java Copyright 1997, R.G.Baldwin Revised 10/28/97 to better accommodate the width requirements of the document. This program is designed to be compiled and run under JDK 1.1 This program creates a "Plain Vanilla" visual object by placing five non-functional Button objects on a Frame object using the FlowLayout manager. The buttons are non-functional because no event listener objects were created and registered on the buttons. The FlowLayout object is constructed with LEFT alignment, a ten-pixel horizontal gap between components, and a fifteen-pixel vertical gap between components. Resizing the Frame object causes the positions of the components to adjust automatically. For simplicity, no event listeners were created and registered. Therefore, the "close" box is not operational and you will need to use some other method to terminate the program. The program was tested using JDK 1.1.3 running under Win95. */ //=======================================================// import java.awt.*; import java.awt.event.*; //=======================================================// public class Layout04 { public static void main(String[] args){ //instantiate a Graphical User Interface object GUI gui = new GUI(); }//end main }//end class Layout04 //=======================================================// class GUI { public GUI(){//constructor Frame myFrame = new Frame( "Copyright 1997, R.G.Baldwin"); myFrame.setLayout(//align,Hgap,Vgap new FlowLayout(FlowLayout.LEFT,10,15)); myFrame.add(new Button("First")); myFrame.add(new Button("Second")); myFrame.add(new Button("Third")); myFrame.add(new Button("Fourth")); myFrame.add(new Button("Fifth")); myFrame.setSize(250,150); myFrame.setVisible(true); }//end constructor }//end class GUI definition //=======================================================// |