ה
ChoiceBoxהמחלקה משמשת ליצירת בקרה המציגה בפני המשתמש מספר אפשרויות לבחור מהרשימה הנפתחת. למשתמש רשאים לבחור אחת מהאפשרויות בלבד. כאשר הרשימה הנפתחת אינה מוצגת, האפשרות שנבחרה כעת היא היחידה הנראית לעין. ניתן להגדיר את ה-
ChoiceBoxלהתנגד לקבל אפשרות null כבחירה תקפה.
הצהרת יבוא
יבוא javafx.scene.control. ChoiceBox;
בנאים
ה
ChoiceBoxבכיתה שני בנאים אחד לרשימת פריטים ריקה ואחד עם סט פריטים נתון:
// צור ChoiceBox ריק
ChoiceBox בחירות = ChoiceBox חדש ();
// צור ChoiceBox באמצעות אוסף רשימה הניתנת לצפייה
ChoiceBox cboices = ChoiceBox חדש (FXCollections.observableArrayList ("תפוח", "בננה", "תפוז", "אפרסק", "אגס", "תות"));
שיטות שימושיות
אם תבחר ליצור ריק
ChoiceBoxניתן להוסיף פריטים מאוחר יותר באמצעות
setItemsשיטה:
choice.setItems (FXCollections.observableArrayList ("תפוח", "בננה", "תפוז", "אפרסק", "אגס", "תות"));
וכן, אם ברצונך לגלות אילו פריטים נמצאים בתוך א
ChoiceBoxאתה יכול להשתמש ב-
getItemsשיטה:
אפשרויות רשימה = אפשרויות. אפשרויות ();
כדי לבחור אפשרות שתבחר כרגע, השתמש ב-
הגדר ערךולספק לו אחת מהאפשרויות:
choice.setValue ("הראשון");
כדי לקבל את הערך של האפשרות שנבחרה כרגע השתמש במקביל
getValueשיטה ולהקצות אותה ל מחרוזת:
אפשרות מחרוזת = choice.getValue (). ToString ();
טיפול באירועים
על מנת להאזין לאירועים במשך א
ChoiceBoxחפץ,
בחירת מודלמשמש. ה
ChoiceBoxמשתמש ב-
SingleSelectionModelכיתה המאפשרת לבחור אפשרות אחת בלבד בכל פעם. ה
שנבחרהאינדקס נכסהשיטה מאפשרת לנו להוסיף א
ChangeListener. המשמעות היא שבכל פעם שהאפשרות שנבחרה משתנה לאופציה אחרת אירוע השינוי יתרחש. כפי שניתן לראות מהקוד שלהלן, האזנה לשינוי וכאשר היא מתרחשת ניתן לקבוע את האפשרות שנבחרה בעבר ואת האפשרות שנבחרה לאחרונה:
אפשרויות רשימה סופיות = בחירות.גייטים ();
select.getSelectionModel (). selectIndexProperty (). addListener (חדש ChangeListener () {
@ חלף על חלל הציבור הרחב (ObservableValue ov, מספר ישן שנבחר, מספר חדש שנבחר) {
System.out.println ("אפשרות שנבחרה ישנה:" + options.get (oldSelected.intValue ()));
System.out.println ("אפשרות שנבחרה חדשה:" + options.get (newSelected.intValue ()));
}
});
אפשר גם להציג או להסתיר את רשימת האפשרויות מבלי שהמשתמש יצטרך ללחוץ על
ChoiceBoxבאמצעות אובייקט
הופעהו
להתחבאשיטות. בקוד שלמטה משמש אובייקט כפתור כדי לקרוא לשיטת ההצגה של a
ChoiceBoxאובייקט כאשר
כפתורנלחץ:
// השתמש בחלונית הערימה לפריסה פשוטה של הפקדים
שורש StackPane = StackPane חדש ();
// צור כפתור כדי להציג את האפשרויות ב- ChoiceBox
כפתור showOptionButton = כפתור חדש ("הצג אפשרויות");
root.getChildren (). הוסף (showOptionButton);
root.setAlignment (showOptionButton, Pos. TOP_CENTER);
// צור את ChoiceBox עם מספר אפשרויות
בחירות ChoiceBox סופיות = ChoiceBox חדש (FXCollections.observableArrayList ("תפוח", "בננה", "תפוז", "אפרסק", "אגס", "תות"));
root.getChildren (). להוסיף (אפשרויות);
// השתמש ב- ActionEvent כדי לקרוא לשיטת ShowBox
showOptionButton.setOnAction (EventHandler חדש () {
@Orride ידית חללים ציבורית (ActionEvent e) {
אפשרויות. show ();
}
});
// קבעו את הסצינה והכניסו את הבמה לתנועה ..
סצנת סצינה = סצינה חדשה (שורש, 300, 250);
primaryStage.setScene (סצנה);
primaryStage.show ();
כדי ללמוד על פקדי JavaFX אחרים, עיין בפקדי ממשק המשתמש של JavaFX.