JavaFX Button minWidth被忽略

时间:2018-11-02 08:11:32

标签: java javafx

在JavaFX中,将组件的minWidth设置为USE_COMPUTED_SIZE时,将根据其内容计算组件的最小宽度。

虽然我已经成功地将其用于许多组件,但它似乎无法像Button那样正常工作:

<?xml version="1.0" encoding="UTF-8"?>

<?import javafx.scene.control.Button?>


<Button mnemonicParsing="false" text="This should always be visible" xmlns="http://javafx.com/javafx/10.0.1" xmlns:fx="http://javafx.com/fxml/1" />

enter image description here enter image description here

所以我测试了将minWidth设置为300时会发生什么:

enter image description here enter image description here

我在做什么错了?

更新

为了测试舞台是否忽略按钮的minWidth,我将按钮包装到HBox中,并在按钮周围添加了空白。 将minWidth设置为USE_COMPUTED_SIZE,结果如下:

enter image description here enter image description here

minWidth设置为200时,我得到:

enter image description here

哪个好-除了我需要计算大小之外。

1 个答案:

答案 0 :(得分:1)

JavaFX API文档说:

  

默认为USE_COMPUTED_SIZE标志,这意味着   minWidth(forHeight)将返回该区域的内部计算值   最小宽度。

     

将此值设置为USE_PREF_SIZE标志将导致   minWidth(forHeight)返回该区域的首选宽度,从而启用   应用程序轻松限制该区域的可调整大小。