TabPane中未正确显示自己组件的布局

时间:2016-02-11 08:09:27

标签: layout javafx javafx-8


我有一个自己的组件(扩展的TextField)。当我在AnchorPane中显示组件时,组件的布局会正确显示。但是当我在TabPane中显示组件时,第一次显示组件时,布局的渲染不正确。

截图:
Own component in an AnchorPane

截图:
Own component in a TabPane

这是一个MCVE:

Timestamp

1 个答案:

答案 0 :(得分:1)

这可能是由于您尝试为相关节点提供的固定值而布局的问题:

cbReadOnly.setMaxHeight(USE_PREF_SIZE);
cbReadOnly.setMinHeight(USE_PREF_SIZE);

runLater()

这只是一个猜测,但无论如何,您可以手动请求渲染器在构建它们时通过class ExtendedTextField extends HBox { ... ... private void init() { ... Platform.runLater( ()->{ requestLayout(); }); } ... } 布局组件:

puts("this is a string" + variable);

BTW,我看不到任何扩展TextField的控件;)