在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" />
所以我测试了将minWidth
设置为300时会发生什么:
我在做什么错了?
更新
为了测试舞台是否忽略按钮的minWidth
,我将按钮包装到HBox中,并在按钮周围添加了空白。
将minWidth
设置为USE_COMPUTED_SIZE
,结果如下:
将minWidth
设置为200时,我得到:
哪个好-除了我需要计算大小之外。
答案 0 :(得分:1)
JavaFX API文档说:
默认为
USE_COMPUTED_SIZE
标志,这意味着minWidth(forHeight)
将返回该区域的内部计算值 最小宽度。将此值设置为
USE_PREF_SIZE
标志将导致minWidth(forHeight)
返回该区域的首选宽度,从而启用 应用程序轻松限制该区域的可调整大小。