博客
关于我
JavaFX之Scene Builder详细使用说明之组件篇(1)——容器组件
阅读量:257 次
发布时间:2019-03-01

本文共 2387 字,大约阅读时间需要 7 分钟。

JavaFX 容器组件参考

容器组件概述

JavaFX 提供了丰富的容器组件,用于构建复杂的用户界面。这些容器不仅可以嵌套控件,还能通过布局实现多样化的展示效果。本文将详细介绍各类容器组件,并展示它们的实际应用场景。


Accordion

Accordion 是一个复合标题面板容器,适用于需要多个展开项的布局。其特点是支持标题面板的折叠功能,用户可以通过点击标题将内容区域展开或折叠。

常见用途:用于菜单栏、内容切换、数据展开等场景。


Accordion(empty)

Accordion(empty)与普通 Accordion 的主要区别是没有 AnchorPane 面板。开发者可以直接在 Accordion 中添加其他容器或控件,实现灵活的布局。

优点:适合需要自定义布局的场景,例如在 TitledPane 中嵌入垂直盒子或流布局。


AnchorPane

AnchorPane 是一个锚布局容器,允许用户将组件放置在布局中的任意位置。通过设置锚点,可以实现组件的灵活摆放。

特点:支持拖动组件到任意位置,适合需要动态布局的场景。


BorderPane

BorderPane 是一个边界布局容器,界面分为五个区域:TOP、LEFT、CENTER、RIGHT、BOTTOM。用户可以根据需求将组件放置到相应的区域中。

特点:支持多区域布局,常用于工具栏、状态栏、边框布局等。


FlowPane

FlowPane 是一个流布局容器,控件会从左到右依次排列。当行满时,会自动换行继续排列。其布局方式类似于自然排列。

特点:适合需要横向或纵向流动布局的场景。


GridPane

GridPane 是一个网格布局容器,可以将控件或容器放置到一个表格般的网格中。每个网格单元可以单独设置大小和布局。

特点:适合需要表格布局的场景,例如数据表格、排版工具等。


HBox

HBox 是一个水平盒子容器,控件会水平排列。即使总宽度超过窗口宽度,也会按比例缩短控件大小。

特点:适合需要水平排列的布局,例如工具栏、菜单栏。


Pane

Pane 是所有容器面板的父类,基本功能与 AnchorPane 一致。它可以嵌套其他容器或控件,适用于通用布局需求。

特点:功能上与 AnchorPane 类似,适合简单布局场景。


ScrollPane

ScrollPane 是一个滚动面板容器,支持自动滚动显示超出视口的内容。它是布局中常用的容器之一。

特点:适合需要滚动显示内容的场景,例如长列表、图像浏览等。


ScrollPane(empty)

ScrollPane(empty)与普通 ScrollPane 的区别是没有 AnchorPane。开发者可以直接在其中添加其他容器或控件。

优点:提供了更大的布局灵活性,适合自定义滚动面板。


SplitPane

SplitPane 是一个分割面板容器,支持水平或垂直分割。它可以将布局分成两个或多个部分,并通过分割条进行切换。

特点:适合需要分割显示区域的场景,例如多个小工具面板、布局切割。


SplitPane(horizontal)

SplitPane(horizontal)是水平分割面板,分割条为垂直方向。它适用于需要左右切割的布局。

特点:分割条居中,支持动态调整分割比例。


SplitPane(vertical)

SplitPane(vertical)是垂直分割面板,分割条为水平方向。它适用于上下切割的布局。

特点:分割条居中,支持动态调整分割比例。


StackPane

StackPane 是一个层叠面板容器,允许将控件叠加在一起。通过 Z-顺序可以控制叠加层次。

特点:适合需要层叠布局的场景,例如对话框、菜单面板等。


Tab

Tab 是与 TabPane 一起使用的单个控件,用于切换显示内容。单独使用时没有效果。

特点:与 TabPane 配合使用,适合多个选项卡切换的场景。


TabPane

TabPane 是一个选项卡面板容器,可以切换显示不同内容。它通过 Tab 控件实现选项卡切换。

特点:支持多个选项卡切换,适合需要多视图展示的场景。


TabPane(empty)

TabPane(empty)与普通 TabPane 的区别是没有 AnchorPane。开发者可以直接在其中添加其他容器或控件。

优点:提供了更大的灵活性,适合自定义选项卡面板。


TextFlow(FX8)

TextFlow 是一个与 Text 配用的文本流布局容器,常用于显示长文本内容。

特点:与 Text 一起使用,支持文本流动布局。


TilePane

TilePane 是一个类似于 FlowPane 的容器,通常与 Tile 控件配合使用。

特点:适合需要平铺布局的场景,例如游戏地图、壁纸等。


TitledPane

TitledPane 是一个带有标题面板的折叠容器。点击标题后可以折叠面板内容,适用于需要面板可展开的场景。

特点:支持折叠功能,与 Accordion 类似。


TitledPane(empty)

TitledPane(empty)与普通 TitledPane 的区别是没有 AnchorPane。开发者可以直接在其中添加其他容器或控件。

优点:提供了更大的灵活性,适合自定义标题面板。


ToolBar

ToolBar 是一个工具栏控件,常用于菜单栏或工具栏布局。

特点:适合需要工具按钮、菜单项的场景。


VBox

VBox 是一个垂直盒子容器,控件会垂直排列。即使总高度超过窗口高度,也会按比例缩短控件大小。

特点:适合需要垂直排列的布局,例如侧边工具栏、对话框面板等。


通过以上容器组件的合理搭配,开发者可以快速构建丰富的用户界面。这些容器不仅提供了多样化的布局方式,还支持动态布局和交互功能,极大地方便了开发者创作。

转载地址:http://bzkx.baihongyu.com/

你可能感兴趣的文章
Netty工作笔记0013---Channel应用案例4Copy图片
查看>>
Netty工作笔记0014---Buffer类型化和只读
查看>>
Netty工作笔记0020---Selectionkey在NIO体系
查看>>
Vue踩坑笔记 - 关于vue静态资源引入的问题
查看>>
Netty工作笔记0025---SocketChannel API
查看>>
Netty工作笔记0027---NIO 网络编程应用--群聊系统2--服务器编写2
查看>>
Netty工作笔记0050---Netty核心模块1
查看>>
Netty工作笔记0057---Netty群聊系统服务端
查看>>
Netty工作笔记0060---Tcp长连接和短连接_Http长连接和短连接_UDP长连接和短连接
查看>>
Netty工作笔记0063---WebSocket长连接开发2
查看>>
Netty工作笔记0070---Protobuf使用案例Codec使用
查看>>
Netty工作笔记0077---handler链调用机制实例4
查看>>
Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
查看>>
Netty工作笔记0085---TCP粘包拆包内容梳理
查看>>
Netty常用组件一
查看>>
Netty常见组件二
查看>>
netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
查看>>
Netty心跳检测机制
查看>>
Netty核心模块组件
查看>>
Netty框架内的宝藏:ByteBuf
查看>>