JavaFX之Scene Builder详细使用说明之设置篇(3)——布局Layout

目录

Layout窗口预览

Anchor Pane Constraints面板

Internal面板

Padding

Size面板

Position面板

LayoutX

LayoutY

Transforms面板

Rotate

Rotation Axis

Scale X

Scale Y

Scale Z

Translate X

Translate Y

Translate Z

Bounds面板

Layout Bounds

Bounds In Local

Bounds In Parent

Extras面板

Baseline Offset

Resizable

Content Bias

Snap To Pixel

Effective Node Orientation


Layout窗口预览

Layout窗口预览如下,是以Button按钮控件为例来说明Layout布局的一些配置:

注意:各个控件的Layout属性配置基本上都是一样的,所以这里以Button为例。

本节虽然叫Layout布局,但是却没有讲具体的布局,至多就是控件的位置相关,关于具体布局还得看容器控件如VBox、HBox等。

Anchor Pane Constraints面板

这个面板是显示该控件的距离上下左右边界的距离。

0?wx_fmt=pnguploading.4e448015.gif转存失败重新上传取消

Internal面板

Padding

设置控件的内边距。区域内容周围的顶部,右侧,底部和左侧填充。该空间将包括在该区域的最小尺寸和首选尺寸的计算中。

调整内边距:

img

Size面板

Size面板是设定控件的宽度和高度:

img

  • Min Width:指的是控件的最小宽度。

  • Min Height:指的是控件的最小高度。

  • Pref Width:指的是控件的预宽度。

  • Pref Height:指的是控件的预高度。

  • Max Width:指的是控件的最大宽度。

  • Max Height:指的是控件的最大高度。

  • Width:指的是控件的实际宽度,只读不可修改。

  • Height:指的是控件的实际高度,只读不可修改。

除了Width、Height其他的都可以进行修改自定义。

Position面板

设置控件的位置,即相对于左上方的位置开始。

LayoutX

相当于X坐标。

LayoutY

相当于Y坐标。

Transforms面板

img

Rotate

设定控件旋转。

Rotation Axis

定义该控件节点的旋转轴。

Scale X

定义沿X轴缩放控件,默认为1。

Scale Y

定义沿Y轴缩放控件,默认为1。

Scale Z

定义沿Z轴缩放控件,默认为1。

Translate X

定义该控件向X轴平移。

节点的最终平移将计算为layoutX+ translateX,在其中layoutX建立节点的稳定位置,并translateX 可以选择对该位置进行动态调整。

Translate Y

定义控件向Y轴平移。

img

Translate Z

定义向Z轴平移。

Bounds面板

img

Layout Bounds

用于此节点的布局计算的矩形边界。layoutBounds可能与节点的视觉范围有所不同,并且根据节点类型的不同,计算结果可能有所不同。 如果节点类型是可调整大小的(Region, Control或WebView),则layoutBounds将始终为0,0 width x height。如果节点类型不可调整大小(Shape, Text或Group),则layoutBounds是根据节点的几何属性计算的,并且不包括节点的剪辑,效果或变换。有关详细信息,请参见各个类的文档。

需要注意的是layoutX,layoutY,translateX,和 translateY变量没有在layoutBounds。这很重要,因为布局代码必须首先确定节点的当前大小和位置(使用layoutBounds),然后进行设置 layoutX和layoutY调整节点的平移,以使其具有所需的布局位置。

由于layoutBounds的计算通常与节点的几何变量相关联,因此将任何此类变量绑定到依赖于的表达式是错误的layoutBounds。例如,形状的x或y变量绝不应绑定到layoutBounds来定位节点。

layoutBounds永远不会为null。

img

Bounds In Local

Node节点的未变换局部坐标空间中此矩形的边界。对于延伸的节点, Shape局部边界还将包括非零笔划所需的空间,该笔划可能落在由位置和大小属性定义的形状几何形状之外。局部范围还将包括设置clip 为的任何裁剪以及设置为的效果effect。 请注意,此方法未考虑节点的可见性。计算仅基于此几何Node。

此属性将始终具有非null值。

请注意,每当节点的几何形状发生变化时,就会自动重新计算boundsInLocal。因此,将节点中的任何这些值绑定到依赖于此变量的表达式是错误的。例如,形状的x或y变量绝不应绑定到boundsInLocal来定位节点。

Bounds In Parent

此矩形的边界Node,包括其变换。 boundsInParent通过采用局部界限(由定义boundsInLocal)并应用通过设置以下附加变量创建的变换 来计算 transforms ObservableList scaleX, scaleY rotate layoutX, layoutY translateX, translateY 从概念上讲,结果边界将在Node父节点的坐标空间中 ,但是节点不必具有父节点即可计算这些边界。

请注意,此方法未考虑节点的可见性。计算仅基于此几何Node。

此属性将始终具有非null值。

请注意,只要节点的几何形状发生更改或以下任何更改,就会自动重新计算boundsInParent:转换ObservableList,translateX,translateY,layoutX,layoutY,scaleX,scaleY或Rotate变量。因此,将节点中的任何这些值绑定到依赖于此变量的表达式是错误的。例如,形状的x或y变量或translateX,translateY绝对不应绑定到boundsInParent来定位节点。

Extras面板

img

Baseline Offset

根据第一个被管理的孩子计算基线偏移量。

Resizable

定义控件是否允许调节大小,默认允许,不可修改。

Content Bias

如果wrapText为true,则contentBias将为HORIZONTAL,否则为null。

Snap To Pixel

定义此区域是否将其子级的位置,间距和大小值调整为像素边界。默认为true,这通常是为了获得清晰的用户界面而预期的行为。值为false将允许小数对齐,这可能会导致边界看起来“模糊”。

Effective Node Orientation

节点的有效方向解决了节点方向的继承问题,返回从左到右或从右到左。

与Properties窗口的Node Orientation有关。

发布了500 篇原创文章 · 获赞 77 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/cnds123321/article/details/104554574