如何在JavaFX中创建微调器?
微调框是一个UI元素,显示带有数字的向上和向下箭头。您可以使用这些箭头增加或减少微调器的值。您可以通过实例化javafx.scene.control.Spinner类来创建微调器。
示例
以下示例演示了Spinner的创建。
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.Spinner;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontPosture;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
public class SpinnerExample extends Application {
public void start(Stage stage) {
//设置标签
Label label = new Label("选择日期:");
Font font = Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 12);
label.setFont(font);
//创建微调器
Spinner month = new Spinner(1, 12, 4);
//将微调器设置为可编辑
month.setEditable(true);
//设置大小
month.setPrefSize(75, 25);
Label label1 = new Label("Month: ");
//创建微调器
Spinner day = new Spinner(1, 31, 4);
//将微调器设置为可编辑
day.setEditable(true);
//设置大小
day.setPrefSize(75, 25);
Label label2 = new Label("Day: ");
//创建微调器
Spinner year = new Spinner(1947, 2999, 2009);
//将微调器设置为可编辑
year.setEditable(true);
//设置大小
year.setPrefSize(75, 25);
Label label3 = new Label("Year: ");
HBox hbox = new HBox(5);
hbox.setPadding(new Insets(10, 10, 10, 25));
hbox.getChildren().addAll(label1, month, label2, day, label3, year);
//创建一个vbox来保存分页
VBox vbox = new VBox();
vbox.setSpacing(5);
vbox.setPadding(new Insets(10, 10, 10, 25));
vbox.getChildren().addAll(label, hbox);
//设置舞台
Group root = new Group(vbox);
Scene scene = new Scene(root, 595, 200, Color.BEIGE);
stage.setTitle("Spinner");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]){
launch(args);
}
}输出结果