JavaFX2专题教程 之 布局面板

合集下载

学会使用JavaFX构建跨平台应用程序

学会使用JavaFX构建跨平台应用程序

学会使用JavaFX构建跨平台应用程序JavaFX是一种用于构建跨平台应用程序的框架,它提供了丰富的图形用户界面(GUI)控件和功能,帮助开发者创建出功能强大、美观易用的应用。

本文将按照章节来介绍如何学会使用JavaFX构建跨平台应用程序。

第一章:JavaFX简介JavaFX是Oracle公司推出的一种用于构建富客户端应用程序的技术框架。

它结合了Java的强大性能和可扩展性,并具备了现代化的图形界面和多媒体功能。

JavaFX可以运行在多种平台上,包括Windows、Mac、Linux等。

它支持Java开发者以面向对象的方式构建应用,而不需要掌握其他领域特定语言或工具。

第二章:JavaFX的安装与配置要开始使用JavaFX,首先需要将其安装和配置在开发环境中。

你可以从Oracle官网下载JavaFX的最新版本,并按照安装指南进行安装。

安装完成后,需要将JavaFX框架配置到你的开发环境中,以便在项目中使用相关的库和API。

配置的具体步骤会根据你使用的开发工具而有所不同,你可以参考对应的文档进行配置。

第三章:JavaFX的基本控件和布局JavaFX提供了丰富的GUI控件,如按钮、文本框、标签等,这些控件能够帮助我们构建用户友好的界面。

同时,JavaFX还提供了多种布局方式,如堆栈布局、网格布局等,方便我们对控件进行位置和大小的调整。

在这一章节中,我们将详细介绍JavaFX的基本控件和布局方式,并演示如何使用它们创建一个简单的界面。

第四章:JavaFX的事件处理与动画JavaFX不仅提供了丰富的GUI控件,还支持事件处理和动画效果。

在这一章节中,我们将学习如何使用JavaFX的事件处理机制,处理鼠标点击、键盘输入等操作。

另外,我们还将介绍JavaFX的动画功能,如渐变、缩放、旋转等效果,让应用界面更加生动和吸引人。

第五章:JavaFX的图形和多媒体JavaFX除了能够处理基本的GUI控件和事件外,还提供了强大的图形和多媒体处理功能。

WPF教程二:布局之StackPanel面板

WPF教程二:布局之StackPanel面板

WPF教程⼆:布局之StackPanel⾯板应⽤程序界⾯设计中,合理的元素布局⾄关重要,它可以⽅便⽤户使⽤,并将信息清晰合理地展现给⽤户。

WPF提供了⼀套功能强⼤的⼯具-⾯板(Panel),来控制⽤户界⾯的布局。

你可以使⽤这些⾯板控件来排布元素。

如果内置布局控件不能满⾜需要的话,还可以创建⾃定义的布局元素。

⾯板(Panel)WPF⽤于布局的⾯板主要有6个,StackPanel(栈⾯板)、WrapPanel(环绕⾯板)。

DockPanel(停靠⾯板)、Canvas(画布)、Grid(⽹格⾯板)和UniformGrid(均布⽹格)。

StackPanel:栈⾯板栈⾯板,可以将元素排列成⼀⾏或者⼀列,其特点是:每个元素各占⼀⾏或者⼀列,Orientation属性指定排列⽅式:Vertical(垂直)【默认】、Horizontal(⽔平),默认情况下,⽔平排列时,每个元素都与⾯板⼀样⾼;垂直排列时,每个元素都与⾯板⼀样宽。

如果包含的元素超过了⾯板空间,它只会截断多出的内容。

元素的Margin属性⽤于使元素之间产⽣⼀定得间隔,当元素空间⼤于其内容的空间时,剩余空间将由HorizontalAlignment和 VerticalAlignment属性来决定如何分配。

1、垂直⽅向排列界⾯运⾏效果:使⽤XAML代码实现:1 <Window x:Class="WpfDemo.MainWindow"2 xmlns="/winfx/2006/xaml/presentation"3 xmlns:x="/winfx/2006/xaml"4 Title="StackPanel⾯板" Height="237" Width="525" WindowStartupLocation="CenterScreen">5 <StackPanel x:Name="stackpanel" Margin="0" Orientation="Vertical">6 <Button Content="第⼀个"></Button>7 <Button Content="第⼆个"></Button>8 <Button Content="第三个"></Button>9 <Button Content="第四个"></Button>10 </StackPanel>11 </Window>2、⽔平⽅向排列界⾯运⾏效果:使⽤XAML代码实现:1 <Window x:Class="WpfDemo.MainWindow"2 xmlns="/winfx/2006/xaml/presentation"3 xmlns:x="/winfx/2006/xaml"4 Title="StackPanel⾯板" Height="237" Width="525" WindowStartupLocation="CenterScreen">5 <StackPanel x:Name="stackpanel" Margin="0" Orientation="Horizontal">6 <Button Content="第⼀个"></Button>7 <Button Content="第⼆个"></Button>8 <Button Content="第三个"></Button>9 <Button Content="第四个"></Button>10 </StackPanel>11 </Window>注:当把StackPanel的FlowDirection属性设置为RightToLeft,Orientation属性设置为Horizontal,StackPanel将从右向左排列元素。

WPF教程二布局之StackPanel面板

WPF教程二布局之StackPanel面板

WPF教程二布局之StackPanel面板WPF中的布局面板是用于协助我们在界面上进行元素排列的工具。

本篇教程将介绍WPF中的StackPanel面板,该面板能够按照指定的方向依次排列元素,并根据元素的大小自动调整布局。

StackPanel面板是基于栈的布局,它有一个Orientation属性,用来指定元素的排列方向。

默认情况下,Orientation属性被设置为Vertical,即垂直方向。

这意味着在StackPanel中的元素会按照从上到下的顺序排列。

让我们来看一个简单的示例。

首先,创建一个新的WPF应用程序,并在MainWindow.xaml文件中添加一个StackPanel元素:```xml<Window x:Class="WpfApp1.MainWindow"...Title="MainWindow" Height="450" Width="800"><Grid><StackPanel><!--添加元素--></StackPanel></Grid></Window>```在StackPanel中,我们可以添加任意数量的元素,这些元素将按照指定的方向依次排列。

例如,我们可以添加两个按钮:```xml<StackPanel><Button Content="Button 1" Width="100" Height="30"/><Button Content="Button 2" Width="100" Height="30"/></StackPanel>```默认情况下,按钮在StackPanel中是从上到下排列的。

使用 JavaFX 2

使用 JavaFX 2

应用开发框架Application Express 大数据商务智能云计算通信数据库性能和可用性数据仓储数据库.NET 动态脚本语言嵌入式数字化体验企业架构企业管理网格计算身份和安全性Java Linux面向服务的架构SolarisSQL 和 PL/SQL 服务器与存储管理服务器与存储系统服务器与存储开发系统硬件和架构虚拟化系统 — 全部文章使用 JavaFX 2.0 布置用户界面作者:James L. Weaver学习使用 JavaFX 2.0 的布局功能使场景中的节点出现在希望它们出现的位置,等等。

2012 年 3 月发布下载::Java FX :NetBeans IDE :示例代码 (Zip)简介JavaFX 2.0 是一个用于创建富互联网应用程序 (RIA) 的 API 和运行时。

JavaFX 于 2007 年推出,2011 年 10 月发布了 2.0 版本。

JavaFX 2.0 的一个优点是可以使用成熟、熟悉的工具用 Java 语言编写代码。

本文着重介绍如何使用 JavaFX 2.0 的布局功能使场景中的节点出现在希望它们出现的位置并在调整窗口大小时调整为合适的大小。

JavaFX 带有自己的布局类,如图 1 所示(来自 Amy Fowler 在 JavaOne 2011 的演示文稿),旨在便于对任何类型的平台和任何大小的场景进行用户界面布局。

这些类位于 j a v a f x .s c e n e .l a y o u t 程序包中。

本文包含一个示例,该示例使用 B o r d e r P a n e 和 H B o x 类以及其他与布局有关的 JavaFX 类创建一个常用的 UI 布局格式。

图 1:JavaFX 布局类所有布局类负责控制其管理的 子节点的位置(可以选择将节点设置为不受管理)。

此外,在特定环境下大多数布局类也可以调整其大小可调 子节点的大小。

在第 1 步中,我们将进一步讨论大小可调节点的行为。

Java的GUI设计打造美观直观的用户界面

Java的GUI设计打造美观直观的用户界面

Java的GUI设计打造美观直观的用户界面Java是一种广泛使用的编程语言,拥有着强大的图形用户界面(GUI)设计能力。

通过使用Java提供的各种GUI库和工具,开发人员可以轻松地创建美观、直观的用户界面。

本文将介绍一些在Java中实现这样的GUI设计的方法和技巧。

一、选择合适的GUI库在Java中,有多个GUI库可供选择,比如Swing、JavaFX等。

选择合适的GUI库是设计美观直观界面的第一步。

Swing是一个成熟的GUI库,提供了丰富的组件和布局管理器,可以满足大部分GUI设计需求。

JavaFX是Java官方推荐的GUI库,它提供了更现代化的界面设计风格和更优秀的性能。

二、使用布局管理器布局管理器是GUI设计中重要的一环,它定义了组件在窗口中的位置和大小。

Java提供了多种布局管理器,如FlowLayout、BorderLayout、GridLayout等。

通过合理选择和组合这些布局管理器,可以实现各种复杂的界面布局。

三、使用合适的图标和图片图标和图片在GUI设计中起着很重要的作用,可以通过它们来提升用户界面的美观性和直观性。

Java提供了处理图标和图片的功能和类库,开发人员可以使用这些功能来加载、处理和显示各种图标和图片。

四、使用合适的颜色和字体颜色和字体也是GUI设计中非常重要的元素,可以用来强调界面的重要信息或者创建特定的视觉效果。

Java提供了各种颜色和字体的类库和功能,可以用来选择合适的颜色和字体样式。

五、增加交互性一个好的用户界面应该具有良好的交互性,能够方便用户进行操作。

Java提供了丰富的事件处理机制和监听器,可以实现交互性功能。

开发人员可以通过监听用户的操作,及时响应并更新界面,实现更好的用户体验。

六、进行界面美化除了以上的基本设计原则,开发人员还可以通过一些额外的技巧来进一步美化用户界面。

比如使用渐变色背景、添加阴影效果、使用动画效果等。

这些技巧可以使界面更加生动、有趣,并提升用户的整体体验。

Java开发桌面程序学习(二)————fxml布局与控件学习

Java开发桌面程序学习(二)————fxml布局与控件学习

Java开发桌⾯程序学习(⼆)————fxml布局与控件学习JavaFx项⽬新建完项⽬,我们的项⽬有三个⽂件Main.java 程序⼊⼝类,载⼊界⾯并显⽰Controller.java 事件处理,与fxml绑定Sample.fxml 界⾯sample.fxml需要通过标签fx:controller定义对应的controller<!-- 最外层的那个布局使⽤fx:controller属性即可 --><FlowPane fx:controller="sample.Controller" ..></FlowPane>专业术语舞台(Stage),场景(Scene),容器(Container),布局(Layout )和控件(Controls)之间的关系常⽤容器(布局)Container可以把容器和布局统⼀成⼀个概念Vbox相当于垂直⽅向LinearLayoutHbox相当于垂直⽅向的LinearLayoutFlowPanel相当于LinearLayout,⽅向可以定义⽔平或者垂直,设置⽔平⽅向,第⼀⾏排满之后,会⾃动换⾏排列,设置垂直⽅向,第⼀列排满之后,会⾃动换下⼀列BorderPane上中下左右五个部分AnchorPane相当于Android⾥⾯的约束布局,⽐如让某个控件离右边100px,离下边100pxScrollPane 滑动的布局GridPane 通常⽤于这样的布局:第⼀列上的只读标签的输⼊表单和第⼆列上的输⼊字段,也就是常⽤的⽤户名后⾯加⼀个输⼊框常⽤控件(Control)默认的为原⽣的,JFX前缀则是Jfoenix⾥⾯的⽂本labelJFXPasswordField 密码框JFXTextField 单⾏输⼊框JFXTextArea 多⾏输⼊框按钮JFXButton选择框JFXCheckboxJFXRadioButtonMenuButton 下拉选择图⽚ImageView进度条JFXProcessbarJFXSlider ⽔平调节,类似按下⾳量键出现横线JFXSpinner 圆圈进度条开关JFXToggleButton列表JFXListView菜单MenuBar ⾃带有⿏标滑过变⾊,就像SceneBuilder的菜单栏MenuMenuItemRadioMenuItem 点击之后前⾯会有√,⼀列菜单可以有多个,但是只能选择⼀个RadioMenuItem,RadioMenuItem之间是互斥的,需要使⽤toggleGroup分为同⼀组CheckMenuItem 多选,⼀列菜单有多个,也可以选多个ToggleGroup toggleGroup = new ToggleGroup();RadioMenuItem radioItem1 = new RadioMenuItem("Option 1");radioItem.setOnAction(new EventHandler<ActionEvent>() {@Override public void handle(ActionEvent e) {System.out.println("radio toggled");}});radioItem1.setToggleGroup(toggleGroup);RadioMenuItem radioItem2 = new RadioMenuItem("Option 2");radioItem.setOnAction(new EventHandler<ActionEvent>() {@Override public void handle(ActionEvent e) {System.out.println("radio toggled");}});radioItem2.setToggleGroup(toggleGroup);SeparatorMenuItem 分割线**前⾯需要在添加到MenuBar⾥⾯才能使⽤ **SpiltMenuButton 左边是某个按钮,右边是⼀个下拉箭头,点击左边,就会实现按钮操作,点击右边,在出现的列表中选择某⼀项,就可以改变左边按钮使⽤SceneBuilder⽣成fxml布局由于现有的⼯具不多,只有个界⾯化的⼯具,所以就不过多去研究fxml代码部分了。

jpanel规则

jpanel规则

JPanel是Java Swing GUI库中的一个类,用于添加组件,如按钮、文本框等,并且提供了绘图功能。

使用JPanel时,需要遵循一些规则,以保证代码的可读性和可维护性。

以下是一些关于JPanel使用的规则:1. 避免重复创建和销毁组件:尽量避免在JPanel上重复创建和销毁组件,这会导致额外的计算和内存开销。

如果需要动态更改组件,可以使用相应的添加和删除方法来操作。

2. 布局管理器的使用:JPanel使用布局管理器来管理其上的组件布局。

使用布局管理器可以简化组件的布局过程,并且能够自动处理组件的缩放和定位。

常见的布局管理器包括BorderLayout、FlowLayout、GridLayout等。

3. 事件处理:如果需要在JPanel上添加事件处理程序,可以使用相应的事件监听器接口。

例如,对于按钮点击事件,可以使用ActionListener接口;对于鼠标事件,可以使用MouseListener或MouseAdapter接口。

4. 重写paintComponent方法:如果需要在JPanel上进行自定义绘图,可以重写其paintComponent方法。

在这个方法中,可以使用Java的绘图API来绘制图形、文本和图像等。

5. 避免在非UI线程中更新UI:Swing组件必须是线程安全的,因此在更新UI时应该使用SwingUtilities.invokeLater方法来确保更新在事件调度线程中进行。

6. 考虑线程安全:由于Swing组件不是线程安全的,因此在进行长时间运行的任务时,应该避免在事件调度线程中执行这些任务。

可以考虑使用SwingWorker或其他并发机制来处理长时间运行的任务。

7. 避免使用Absolute Positioning:尽量避免使用setBounds()方法来绝对定位JPanel上的组件。

这种方法可能导致代码难以维护和调试,并且可能在不同平台和窗口大小下表现不一致。

以上是一些关于JPanel使用的规则,遵循这些规则可以编写出更加健壮、可读性更好的代码。

JavaFX几种典型的布局策略

JavaFX几种典型的布局策略

JavaFX⼏种典型的布局策略JavaFX⼏种典型的布局策略为了构造我们所需要的程序界⾯,我们会使⽤JavaFX提供的丰富的控件来实现这⼀⽬标。

但是如何摆放这些控件的位置是⼀个重要的问题,JavaFX提供了⼀种特殊的控件,即⾯板Pane来解决这个问题,不同类型的⾯板采取不同的布局策略。

我们可以根据实际的需要来选择不同的⾯板,从⽽构造出我们所需要的界⾯。

下⾯就介绍⼏种常⽤的⾯板。

(⼀) FlowPane⾯板它采⽤的布局策略是:按照控件的添加次序按个摆放,按照从上到下、从左到右的次序摆放。

当舞台的⼤⼩发⽣变化后,场景的⼤⼩也⾃动跟着变化,⾯板的⼤⼩也跟着变化,并且会重新计算各个控件的位置,重新摆放各个控件的位置。

⾸先创建⼀个FlowPane对象,代码如下:FlowPane pane = new FlowPane();pane.setPadding(new Insets(11, 12, 13, 14));pane.setHgap(5);//设置控件之间的垂直间隔距离pane.setVgap(5);//设置控件之间的⽔平间隔距离创建两个标签对象、两个⽂本输⼊框和⼀个按钮对象,代码如下:Label lbName = new Label("Please input a name:");TextField tfName = new TextField();Label lbPassword = new Label("Please input a password:");TextField tfPassword = new TextField();Button okbtn = new Button("OK");将这⼏个控件添加到⾯板中,代码如下:pane.getChildren().addAll(lbName,tfName,lbPassword,tfPassword,okbtn);程序运⾏后界⾯如下所⽰:当改变舞台⼤⼩时,界⾯如下:(⼆) GridPane⾯板它采⽤的布局策略是:将整个⾯板划分为若⼲个格⼦,每个格⼦的⼤⼩是⼀样的,每个格⼦中可以放置⼀个控件,类似于表格的⽅式。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JavaFX2.x专题教程(布局面板)1界面布局1.1内置布局面板在JavaFX应用中,通过设置每个UI元素的位置和尺寸属性,可以实现手动UI控件布局。

但是,JavaFX也提供了一个更容易界面布局选择,即利用内置的布局面板。

JavaFX的SDK提供了好几个布局容器(谓之面板)来简洁的设置和管理布局,诸如行式、列式、栈式、标题式以及其它等。

当视窗尺寸改变时,布局面板自动重定位和改变所包含的节点尺寸,以便保持相关节点属性的一致性。

这个专题中,将对JavaFX布局包内的每个布局面板进行概要介绍并提供相应简单示例。

LayoutSample.java文件包含了内置控件主体,源码参见附件1:布局示例。

也可下载相应的完整的Netbeans的工程文件:LayoutSample.zip。

下面介绍内置布局面板控件。

1.1.1边界面板(BorderPane)BorderPane布局面板内提供了上、下、左、右、中五个区域放置节点,图1-1展示了边界面板的情形。

如果实际应用不需要某一区域,可以不需要定义之并不为之分配空间即可。

边界面板对于顶部工具栏、底部状态栏、左边导航栏、右边附件信息以及中部工作区的典型外观是非常有用的。

如果窗口比每个区域内容需要的空间大,缺省情况下,多余的将留给中间区域;如果窗口小于需要的空间,则区域就肯能重叠。

重叠方式有区域内设置的顺序方式决定。

比如,区域设置的顺序为左、底和右,那么当窗口小了,底部将重叠在左边区域,右边将重叠底部区域。

如果顺序是左、右和底,那么当窗口小时,底部重叠在左右区域上。

示例1-1展示了边界面板的创建,并用于布局示例应用控件的设置。

每个区域应用的创建布注意,底部区域在此示例的边界面板中没有用。

如果需要增加些内容到底部区域,使用如下语句,并用你选择的控件来代替node内容。

1.1.2水平布局面板(HBox)HBox布局面板为在单行中布置一系列节点提供了一种简易方式。

如图1-2所示,展示了一个HBox面板示例图。

图1-2 HBox面板特性padding用于设置并管理节点和HBox边缘间的距离。

设置特性Spacing间隔用于管理节点间的间距。

背景色能通过设置式样风格来改变。

示例1-2创建了一个HBox面板工具栏,且包含了两个按钮。

示例1-1中的setTop()方法把HBox面板添加到边界面板的顶部区域。

结果如图1-3所示。

图1-3 边界面板中HBox1.1.3垂直布局面板(VBox)VBox面板是在单列中布置节点对象的,其它与HBox面板类似。

图1-4展示了VBox的一个图1-4 VBox面板示例特性padding用来设置并管理节点间和VBox边缘的间距;Spacing特性用来设置管理节点间距;Margins用来设置添加个别控件周围的附属空间。

示例1-3创建了一个选项清单的VBox 面板示例应用。

示例1-3 创建VBox面板public VBox addVBox(); {VBox vbox = new VBox();vbox.setPadding(new Insets(10));vbox.setSpacing(8);Text title = new Text("Data");title.setFont(Font.font("Arial", FontWeight.BOLD, 14));vbox.getChildren().add(title);Hyperlink options[] = new Hyperlink[] {new Hyperlink("Sales"),new Hyperlink("Marketing"),new Hyperlink("Distribution"),new Hyperlink("Costs")};for (int i=0; i<4; i++) {VBox.setMargin(options[i], new Insets(0, 0, 0, 8));vbox.getChildren().add(options[i]);}return vbox;}示例1-1中的setLeft方法把VBox面板添加到边界面板的左侧区域。

这样结果如图1-5所示。

1.1.4堆栈面板(StackPane)StackPane布局面板在单一堆栈中放置所有节点,且每个新节点被添加到前一个节点之上。

这种布局模式,为在图形或图片上叠加文字或通过叠加普通图形创建复杂图形提供了简易的实现方式。

图1-6展示了一个渐变背景的矩形上,通过堆栈方式创建了一个帮助图标。

图1-6 堆栈面板这个特性应用所有子对象,而margins 可设置调整个别子对象在堆栈中的位置。

示例1-4代码最后几行把堆栈面板添加到示例1-2的HBox面板中,并且一直放置在面板最右边。

结果如图1-7所示。

图1-7 HBox中的堆栈面板1.1.5网格面板(GridPane)GridPane布局面板能创建一种灵活的行列式网格,并可在其中放置节点对象。

节点对象可以放置在网格中的任意单元格,并可按需跨越单元格。

网格面板对于创建表单或在行列任意组织布局非常有用。

图1-8展示了一个网格面板应用情况,包括图标、标题、子标题、文本和饼图等。

在此图中,gridLinesVisible属性用于设置网格线,用于展示行、列、以及行列间的图1-8 网格面板示例Gap特性用于设置管理行列间隔;padding特性用于设置管理节点和网格面板间的的距离。

Vertical和horizon对齐特性用于设置管理相应单元格中单个控件的对齐方式。

示例1-5创建了网格面板,其结果如图1-8所示。

public GridPane addGridPane() {GridPane grid = new GridPane();grid.setHgap(10);grid.setVgap(10);grid.setPadding(new Insets(0, 10, 0, 10));// Category in column 2, row 1Text category = new Text("Sales:");category.setFont(Font.font("Arial", FontWeight.BOLD, 20));grid.add(category, 1, 0);// Title in column 3, row 1Text chartTitle = new Text("Current Year");chartTitle.setFont(Font.font("Arial", FontWeight.BOLD, 20));grid.add(chartTitle, 2, 0);// Subtitle in columns 2-3, row 2Text chartSubtitle = new Text("Goods and Services");grid.add(chartSubtitle, 1, 1, 2, 1);// House icon in column 1, rows 1-2ImageView imageHouse = new ImageView(newImage(LayoutSample.class.getResourceAsStream("graphics/house.png"))); grid.add(imageHouse, 0, 0, 1, 2);// Left label in column 1 (bottom), row 3Text goodsPercent = new Text("Goods\n80%");GridPane.setValignment(goodsPercent, VPos.BOTTOM);grid.add(goodsPercent, 0, 2);// Chart in columns 2-3, row 3ImageView imageChart = new ImageView(newImage(LayoutSample.class.getResourceAsStream("graphics/piechart.png"))) ;grid.add(imageChart, 1, 2, 2, 1);// Right label in column 4 (top), row 3Text servicesPercent = new Text("Services\n20%");GridPane.setValignment(servicesPercent, VPos.TOP);示例1-9所示。

图1-9 边界面板中的网格面板1.1.6流面板(FlowPane)FlowPane内的节点对象连续的布设,并包装在一定的面板边界集合内。

节点可以垂直或水平流水式布设。

垂直流面板包装在一定高度的面板内,水平流面板包装在一定宽度的流面板内。

图1-10展示了一个使用数字图标的水平流面板。

根据约定,垂直流面板内,第一列包含特性gap用于设置管理行列间间隔;padding属性用于设置管理节点和面板边界间的间距。

示例1-6展示了带有一系列页图标的水平流面板的构建模式。

1.1.7片面板(TilePane)片面板与流面板类似。

TilePane把所有节点对象放置一个网格内,网格内的单元格或片的尺寸相同。

节点以水平行的方式或垂直列的方式布设。

水平片以片面板宽度来包装片,垂直片以高为界来包装。

用prefColumn和prefRows属性来建立片面板的优先尺寸。

Gap特性用于设置管理行列间隔。

Padding属性用于设置管理节点和面板边界间的距离。

示例1-7创建了一个水平片面板,并产生相同的布局,如图1-10做事。

1.1.8锚面板(AnchorPane)AnchorPane布局面板可锚定节点于面板的顶、底、左边、右边或中间。

当窗口尺寸调整时,相应节点维护它们相对于锚点的位置。

节点可被锚定于多个位置,多个节点也可锚定于同一个位置。

图1-12展示了带有锚定顶部的网格面板的锚面板,以及带有两个按钮锚定于底部图1-12 锚面板示例border.setCenter(addAnchorPane(addGridPane()));图1-13 边界面板中锚面板应用底部的按钮如何移动到更靠近销售信息的位置图1-14 调整锚面板。

相关文档
最新文档