• JavaFX ComboBox的选中事项


    参考1:https://blog.csdn.net/mexel310/article/details/37909205

    参考2:https://blog.csdn.net/maosijunzi/article/details/43486441

    目的:通过选择下拉框中的字体,更新字符串“JavaFX”的显示字体。

     1 import javafx.application.Application;
     2 import javafx.beans.value.ChangeListener;
     3 import javafx.beans.value.ObservableValue;
     4 import javafx.collections.FXCollections;
     5 import javafx.geometry.Insets;
     6 import javafx.scene.Node;
     7 import javafx.scene.Scene;
     8 import javafx.scene.control.ComboBox;
     9 import javafx.scene.control.Label;
    10 import javafx.scene.control.Tooltip;
    11 import javafx.scene.layout.BorderPane;
    12 import javafx.scene.layout.StackPane;
    13 import javafx.scene.text.Font;
    14 import javafx.stage.Stage;
    15 
    16 public class MyJavaFX extends Application {
    17 
    18     @Override
    19     public void start(Stage primaryStage) throws Exception {
    20         // Create a pane to hold the label and the combo box
    21         BorderPane pane = new BorderPane();
    22         
    23         // label
    24         Label label = new Label();
    25         label.setText("JavaFX");
    26         
    27         // combo box
    28         ComboBox<Object> comboBox = new ComboBox<>();
    29         comboBox.setTooltip(new Tooltip("Select the language"));
    30         comboBox.setItems(FXCollections.observableArrayList(Font.getFamilies()));
    31         comboBox.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() {
    32             @Override
    33             public void changed(ObservableValue observable, Object oldValue, Object newValue) {
    34                 System.out.println(newValue.toString());
    35                 label.setFont(Font.font(newValue.toString()));
    36                 
    37             }
    38         });
    39         
    40         // Place combo box in the top of the pane, and label in the bottom of the pane 
    41         pane.setTop(new CustomPane(comboBox));
    42         pane.setBottom(new CustomPane(label));
    43         
    44         Scene scene = new Scene(pane);
    45         primaryStage.setTitle("Font Demo");
    46         primaryStage.setScene(scene);
    47         primaryStage.show();
    48     }
    49 
    50     public static void main(String[] args) {
    51         launch(args);
    52     }
    53 }
    54 
    55 class CustomPane extends StackPane {
    56     public CustomPane(Node node) {
    57         getChildren().add(node);
    58         setStyle("-fx-border-color: green;");
    59         setPadding(new Insets(20, 20, 20, 20));
    60     }
    61 }

    运行效果:

     

  • 相关阅读:
    Linq技术四:动态Linq技术 -- Linq.Expressions
    74HC595的中文资料
    MessageDigest简单介绍
    gpu显存(全局内存)在使用时数据对齐的问题
    走进windows编程的世界-----windows进程
    Matlab画图-非常具体,非常全面
    php实现 合并表记录(需求是最好的老师)
    php实现求一个数的质数因子
    php课程 4-16 数组自定义函数(php数组->桶)
    jquery-3 jquery选择器
  • 原文地址:https://www.cnblogs.com/Satu/p/10802106.html
Copyright © 2020-2023  润新知