عناصر تحكم JavaFX: نظرة عامة على ChoiceBox

ال

ChoiceBox
يتم استخدام الفصل الدراسي لإنشاء عنصر تحكم يقدم للمستخدم بعض الخيارات للاختيار من القائمة المنسدلة. يُسمح للمستخدم باختيار أحد الخيارات فقط. عندما لا تظهر القائمة المنسدلة ، يكون الخيار المحدد حاليًا هو الخيار الوحيد المرئي. من الممكن تعيين
ChoiceBox
الكائن لقبول خيار فارغ كخيار صالح.

بيان الاستيراد

استيراد javafx.scene.control. ChoiceBox ؛

منشئون

ال

ChoiceBox
يحتوي الفصل على مُنشئين أحدهما لقائمة فارغة من العناصر والآخر بمجموعة معينة من العناصر:
// إنشاء صندوق اختيار فارغ
اختيارات ChoiceBox = جديد ChoiceBox () ؛
// إنشاء ChoiceBox باستخدام مجموعة قائمة يمكن ملاحظتها
ChoiceBox cboices = new ChoiceBox (FXCollections.observableArrayList ("Apple"، "Banana"، "Orange"، "Peach"، "Pear"، "Strawberry"))؛

طرق مفيدة

إذا اخترت إنشاء فارغة

ChoiceBox
يمكن إضافة العناصر لاحقًا باستخدام
setItems
طريقة:
options.setItems (FXCollections.observableArrayList ("Apple" و "Banana" و "Orange" و "Peach" و "Pear" و "Strawberry")) ؛

وإذا كنت تريد معرفة ما هي العناصر الموجودة في

ChoiceBox
يمكنك استعمال ال
getItems
طريقة:
instagram viewer
خيارات القائمة = options.getItems () ؛

لاختيار خيار يتم تحديده حاليًا ، استخدم

setValue
الطريقة وتزويدها بأحد الخيارات:
options.setValue ("الأول") ؛

للحصول على قيمة الخيار المحدد حاليًا ، استخدم المطابق

الحصول على قيمة
طريقة وتعيينه إلى خيط:
خيار السلسلة = options.getValue (). toString () ؛

التعامل مع الحدث

من أجل الاستماع إلى أحداث أ

ChoiceBox
الكائن
اختيار النموذج
يستخدم. ال
ChoiceBox
يستخدم
SingleSelectionModel
فئة تسمح فقط باختيار خيار واحد في كل مرة. ال
تم تحديد الخاصية الفريدة
طريقة تسمح لنا بإضافة
التغيير
. وهذا يعني أنه كلما تغير الخيار المحدد إلى خيار آخر ، سيحدث حدث التغيير. كما ترى من الكود أدناه ، يتم الاستماع إلى التغيير وعندما يحدث الخيار المحدد مسبقًا ويمكن تحديد الخيار المحدد حديثًا:
خيارات القائمة النهائية = options.getItems () ؛
options.getSelectionModel (). selectedIndexProperty (). addListener (new ChangeListener () {
@ تم تغيير الفراغ العام المتاح (ObservableValue ov ، Number oldSelected ، Number newSelected) {
System.out.println ("Old Selected Option:" + options.get (oldSelected.intValue ()))؛
System.out.println ("New Selected Option:" + options.get (newSelected.intValue ()))؛
}
});

من الممكن أيضًا إظهار أو إخفاء قائمة الخيارات دون أن يضطر المستخدم إلى النقر فوق

ChoiceBox
الكائن باستخدام
تبين
و
إخفاء
طرق. في الرمز أدناه ، يتم استخدام كائن زر لاستدعاء طريقة إظهار أ
ChoiceBox
الاعتراض عند
زر
يتم النقر عليه:
// استخدم stackpane لتخطيط بسيط لعناصر التحكم
جذر StackPane = StackPane () جديد ؛
// إنشاء زر لإظهار الخيارات في ChoiceBox
زر showOptionButton = زر جديد ("إظهار الخيارات") ؛
root.getChildren (). add (showOptionButton) ؛
root.setAlignment (showOptionButton، Pos. مركز أعلى)؛
// إنشاء مربع الاختيار مع عدد قليل من الخيارات
اختيارات ChoiceBox النهائية = new ChoiceBox (FXCollections.observableArrayList ("Apple" و "Banana" و "Orange" و "Peach" و "Pear" و "Strawberry")) ؛
root.getChildren (). add (options)؛
// استخدم ActionEvent لاستدعاء طريقة العرض ChoiceBox
showOptionButton.setOnAction (الجديد EventHandler () {
Override public void handle (ActionEvent e) {
options.show () ؛
}
});
// تعيين المشهد ووضع المرحلة في الحركة ..
مشهد المشهد = مشهد جديد (الجذر ، 300 ، 250) ؛
primaryStage.setScene (مشهد) ؛
primaryStage.show () ؛

لمعرفة المزيد عن عناصر تحكم JavaFX الأخرى ، ألق نظرة على عناصر تحكم واجهة مستخدم JavaFX.