15

setMinSize()例如,是否适用于容器GridPane?我发现在我的程序中GridPane忽略了 min。手动调整大小时的大小属性。

这是 FXML 代码:

<GridPane fx:id="gp" prefHeight="134.0" prefWidth="238.0" xmlns:fx="http://javafx.com/fxml" fx:controller="javafxapplication12.SampleController">
  <columnConstraints>
    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
  </columnConstraints>
  <rowConstraints>
    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
  </rowConstraints>
</GridPane>

和控制器类

public class SampleController implements Initializable {
    
    @FXML
    private GridPane gp;
    
    @Override
    public void initialize(URL url, ResourceBundle rb) {
        gp.setMaxWidth(700);
        gp.setMinSize(200, 200);
    }
}

这里有什么问题?是否应该有某种“窗口”最大/最小尺寸?

4

1 回答 1

35

我将假设通过窗口,您的意思是Stage(哪个子类Window)。

窗口大小可以与场景的根容器大小不同。您可以将窗口或舞台视为场景中的独立视口,其大小可以大于或小于场景根的最小和最大规格。

要设置舞台的最小或最大尺寸,请设置其minHeightandminWidthmaxHeightandmaxWidth属性。

其他问题的答案

可以Stage设置为“适合整个显示器”大小吗?

stage.setFullScreen(true)

但是如何使大小与我们通过点击标题栏的大小相同呢?

stage.setMaximized(true)

于 2012-10-02T10:25:48.890 回答