如何设置DatePicker
的高度?
通常情况下,您可以像设置按钮或标签一样设置prefHeight
或maxHeight
。但它似乎与DatePicker
无关。
DatePicker datePicker = new DatePicker();
pane.getChildren().add(datePicker);
datePicker.setMaxHeight(16);
请注意,我只对"输入字段"的高度感兴趣。弹出日历很好。
设置scaleY
属性有效,但当然是要收集所有内容......
答案 0 :(得分:2)
我认为您需要使用setPrefHeight()
方法将首选高度设置为DatePicker
。
以下是一些示例代码:
import javafx.application.Application;
import static javafx.application.Application.launch;
import javafx.scene.Scene;
import javafx.scene.control.DatePicker;
import javafx.scene.control.Label;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class MainApp extends Application {
@Override
public void start(Stage stage) throws Exception {
AnchorPane root = new AnchorPane();
DatePicker datePicker = new DatePicker();
datePicker.setMinHeight(12.);
datePicker.setPrefHeight(16.);
datePicker.setMaxHeight(60.);
HBox hBox = new HBox();
hBox.getChildren().add(new Label("DatePicker with 60px height"));
hBox.getChildren().add(datePicker);
HBox hBox1 = new HBox();
DatePicker datePicker1 = new DatePicker();
hBox1.getChildren().add(new Label("DatePicker with default height"));
hBox1.getChildren().add(datePicker1);
VBox vBox = new VBox(25);
vBox.getChildren().addAll(hBox, hBox1);
root.getChildren().add(vBox);
Scene scene = new Scene(root);
stage.setTitle("JavaFXs' DatePicker and the setPrefHeigth() method");
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
使用setMaxHeight()
方法可以覆盖区域最大计算大小,您可以阅读DOCs.
更新:
使用setMinHeight()
方法,在DatePicker
上设置最小高度(使用低于首选高度的值),然后您也可以使用16作为首选高度。
代码段
DatePicker datePicker = new DatePicker();
datePicker.setMinHeight(12.);
datePicker.setPrefHeight(16.);
HBox hBox = new HBox();
hBox.getChildren().add(new Label("DatePicker with 16px height"));
hBox.getChildren().add(datePicker);
帕特里克