Transcript JAVA

© Keren Kalif
JavaFX
‫קרן כליף‬
‫‪© Keren Kalif‬‬
‫ביחידה זו נלמד‪:‬‬
‫‪ ‬מהו ‪JavaFX‬‬
‫‪ ‬עיצוב באמצעות ‪css‬‬
‫‪ ‬הגדרת ‪ GUI‬באמצעות ‪fxml‬‬
‫‪2‬‬
‫מהו ‪JavaFX‬‬
‫‪© Keren Kalif‬‬
‫‪3‬‬
‫‪ ‬אוסף מחלקות של רכיבים גרפיים המאפשריים לייצר ‪ GUI‬בצורה‬
‫פשוטה יותר מאשר ‪swing‬‬
‫‪ ‬באמצעות ‪ JavaFX‬ניתן להפריד בין הקוד שבונה את ה‪ GUI -‬לבין‬
‫הקוד שמעצב אותו‬
‫‪ ‬דוגמא‪:‬‬
‫דוגמא ראשונה‪:‬‬
‫‪Hello World‬‬
‫‪ Launch‬ממומשת ב‪Application -‬‬
‫ומפעילה את המתודה ‪start‬‬
‫ה‪ Stage -‬ה‪Top Level -‬‬
‫‪ Container‬של החלון‬
‫ה‪ Scene -‬שומרת בעץ‬
‫היררכי את כל רכיבי החלון‬
‫‪© Keren Kalif‬‬
‫‪4‬‬
© Keren Kalif
5
‫תרשים היררכי של הדוגמא‬
http://docs.oracle.com/javafx/2/get_started/hello_world.htm
© Keren Kalif
6
FlowPane -‫דוגמא לשימוש ב‬
‫דוגמאות הרצה‬
‫‪© Keren Kalif‬‬
‫‪7‬‬
‫עבודה עם ‪css‬‬
‫‪© Keren Kalif‬‬
‫‪8‬‬
‫‪ )Cascading Style Sheets( CSS ‬היא שפה המכילה הגדרות‬
‫עיצוב לדפי ‪ :html‬פונטים‪ ,‬צבעים‪ ,‬גודל פונט‪ ,‬רקע‪ ,‬הצללות וכו'‬
‫‪ JavaFX ‬יודעת לעבוד עם קובץ ‪ ,css‬ומכך אחת החוזקות שלה‬
‫שהיא היכולת לבנות את הטופס ולעצב אותו ע"י שני מתכנים שונים‬
‫תגיות המוגדרות בשפה‬
‫תגית חדשה‬
‫דוגמא עם ‪css‬‬
‫פקודה שקובעת שעיצוב הפקד‬
‫ילקח מהתגית ‪ my-label‬ב‪css -‬‬
‫קישור ל‪ css -‬המכיל‬
‫את הגדרות העיצוב‬
‫‪© Keren Kalif‬‬
‫‪9‬‬
‫הפלט‬
‫‪© Keren Kalif‬‬
‫‪10‬‬
‫‪ ‬עיצוב ה‪'label -‬ים שונה‪:‬‬
‫עיצובו נגזר מהתגית‬
‫המובנית ‪.label‬‬
‫עיצובו נגזר מהתגית‬
‫‪ my-label‬ב‪css -‬‬
© Keren Kalif
11
‫דוגמאות נוספות‬
BordersExample 
WelcomeWithCss 
‫‪© Keren Kalif‬‬
‫‪FXML‬‬
‫‪ ‬שפה המבוססת ‪ XML‬לבניית ממשק המשתמש בהפרדה‬
‫מהלוגיקה של המערכת‬
‫הקובץ עם הגדרת‬
‫רכיבי ה‪GUI -‬‬
‫‪12‬‬
‫דוגמאת ‪fxml‬‬
‫המחלקה עם‬
‫מימושי האירועים‬
‫(‪)controller‬‬
‫הגדרת אירוע‬
‫קישור למשתנה‬
‫שמוגדר ב‪-‬‬
‫‪controller‬‬
‫‪© Keren Kalif‬‬
‫‪13‬‬
© Keren Kalif
14
controller -‫מחלקת ה‬
© Keren Kalif
15
fxml ‫דוגמא נוספת של‬
menu.fxml 
‫דוגמאת "השרדות"‬
‫לשים לב בקוד‬
‫לשימוש בתיבות‬
‫‪© Keren Kalif‬‬
‫‪16‬‬
© Keren Kalif
17
‫לינקים שימושיים‬
JavaFX -‫ עם מחלקות ה‬jar -‫ ה‬
http://docs.oracle.com/javafx/ :oracle ‫ המדריך המצויין של‬
‫ שמכיל את המחלקות לתיבות‬jar -‫ ה‬
:‫ לינק לדוגמאות שימוש‬
http://edu.makery.ch/blog/2012/10/30/javafx-2-dialogs
http://html-color-codes.info/ :‫ למציאת קוד צבע‬
‫פרטים טכניים‬
‫‪© Keren Kalif‬‬
‫‪ ‬יש להתקין את ‪ JDK‬גרסא ‪ 1.7‬ומעלה‪ ,‬ובפרט ה ‪.jfxrt.jar‬‬
‫‪ ‬ה‪ main -‬אינו נחוץ כאשר עוטפים את הקוד ל‪ jar -‬באמצעות ה‪-‬‬
‫‪ JavaFX Package Tool‬אבל מומלץ תמיד לשים ‪ main‬עבור‬
‫‪'jar‬ים שנעטפו להרצה בצורה הרגילה‪ ,‬ללא ה‪JavaFX -‬‬
‫‪Launcher‬‬
‫‪18‬‬
‫נושאים נוספים‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫אנימציות‬
‫גרפים‬
‫אריזת הפרוייקט‬
‫הטמעת הפרוייקט בדף ‪html‬‬
‫‪© Keren Kalif‬‬
‫‪19‬‬
‫ביחידה זו למדנו‪:‬‬
‫‪ ‬מהו ‪JavaFX‬‬
‫‪ ‬עיצוב באמצעות ‪css‬‬
‫‪ ‬הגדרת ‪ GUI‬באמצעות ‪fxml‬‬
‫‪© Keren Kalif‬‬
‫‪20‬‬