Java开发笔记(一百四十五)FXML布局的伸展适配_fxml平行布局-程序员宅基地

技术标签: Java开发笔记  fxml  java  javafx  eclipse  

前面介绍了FXML的基本格式及其控制器的用法,算是打通了FXML方式的编码流程。程序界面通常保持固定尺寸,不过有时也允许用户拖曳窗口大小,不拖不打紧,一拖就可能坏事。像之前的登录窗口,没拖的时候界面如下图所示。
在这里插入图片描述
现在开始慢慢把窗口拖长,拖到一半停下来,此时登录界面如下图所示。
在这里插入图片描述
乍看过去,界面上的各控件大小保持不变,且始终居中显示,没发现什么问题。可是继续拖长窗口,突然之间这些控件乾坤大挪移,用户名区域顶到了第一行,登录按钮跟着顶到了第二行,变化后的界面效果如下图所示。
在这里插入图片描述
之所以出现控件排版错乱的问题,是因为该界面的根节点采用了流式窗格FlowPane。所谓流式,指的是从左到右排列,倘若没排满一行,就跟在当前行后面;只有排满了一行,才会另起一行继续排。刚刚拖拉窗口的时候,拖得太长了,导致窗口的宽度能够容纳登录类型与用户名两个区域,结果两块区域便挤到同一行了。显然这不是期望的界面布局,至少控件要老老实实呆在自己的位置,不可越雷池一步。
若想避免流式窗格排版飘忽的问题,可以使用垂直箱子VBox替换流式窗格,垂直箱子规定它的每个直接下级都占用一行,绝对不会产生两个直接下级挤在同一行的现象。于是修改原来的fxml文件,把根节点FlowPane换成VBox,对应的xml标签变为以下格式:

<VBox fx:controller="com.javafx.fxml.LoginController" xmlns:fx="http://
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/pinlantu/article/details/100170526

智能推荐

python可以实现科学计算吗_python科学计算-程序员宅基地

文章浏览阅读470次。python科学计算NumPy 是科学应用程序库的主要软件包之一,用于处理大型多维数组和矩阵,它大量的高级数学函数集合和实现方法使得这些对象执行操作成为可能。科学计算的另一个核心库是 SciPy。它基于 NumPy,其功能也因此得到了扩展。SciPy 主数据结构又是一个多维数组,由 Numpy 实现。这个软件包包含了帮助解决线性代数、概率论、积分计算和许多其他任务的工具。此外,SciPy 还封装了..._python不能用于科学计算

【自学Flutter】38 flutter_webview_plugin的使用-程序员宅基地

文章浏览阅读3.5k次。38 flutter_webview_plugin的使用1.源代码import 'package:flutter/material.dart';import 'package:flutter_webview_plugin/flutter_webview_plugin.dart';void main() => runApp(MyApp());class MyApp extends..._flutter_webview_plugin

1.4最流行的NoSQL——Redis_最流行的nosql———redis-程序员宅基地

文章浏览阅读247次。本文比较重要的概念:NoSQL(及它的优点) Redis(及它的优点)Redis是当前互联网世界最为流行的NoSQL(Not Only SQL)NoSQL:在互联网中作用很大,可以在很大程度上提高互联网系统的性能。具备一定持久层的功能,也可以作为一种缓存工具注释:Redis缓存:是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API对于NoSQL数据库而言,作为持久层,它存储的数据使半结构化的,这意味着计算机在读入_最流行的nosql———redis

环面上 FHE 的快速自举:GSIS/GLWE & LUT/Automata & Blind Rotate_盲旋转-程序员宅基地

文章浏览阅读399次。TFHE 方案的盲旋转,它将环面以精度 $1/2N$ 离散化,然后使用 $v \in \mathbb T[X]/(X^N+1)$ 记录 “**反循环函数**”(满足 $f(x+1/2)=-f(x)$ 反对称性) $f(i/2N)$ 的 Lookup Table,使用自举秘钥 $E(si)$ 作为控制位,串行执行 MUX 实现对向量 $v$ 的循环移位,最后提取出 $f(b-s \cdot a) \in \mathbb T$ 的 TRLWE 密文。离散环面上的园整函数,恰好就是一个反循环函数。_盲旋转

服务器硬盘数据备份到nas,谁说固态硬盘做存储是鸡肋?NAS存储服务器还能这样玩...-程序员宅基地

文章浏览阅读3.6k次。原标题:谁说固态硬盘做存储是鸡肋?NAS存储服务器还能这样玩前一阵子美亚廉价10TB机械硬盘让不少拥有NAS或打算购买NAS的朋友狂欢了一把。不过双盘位、固态硬盘这些看似不入流的NAS玩法也有自己的特殊作用。 相比机械硬盘而言,固态硬盘零噪音、不怕震动,安装在小体积的双盘位NAS中可以直接放置到桌面上使用,而不必担心噪音的烦恼。特别是搭配东芝TR200这一类大容量、低功耗固态硬盘时,NAS的散热风..._nas 固态硬盘做存储

【QT】缺少Qt5Widgetsd.dll等文件的问题_qt5widgets.dll-程序员宅基地

文章浏览阅读2.4k次。在生成的exe文件处进入cmd命令行,执行命令。?.exe为工程生成的可执行文件名称。执行后目录下会出现对应的配置文件。_qt5widgets.dll

随便推点

基于风控特征相关度,挖掘贷中等场景中的存量客户价值|来看看相关实操_风控 建立存量客户的特征标签-程序员宅基地

文章浏览阅读836次。基于风控特征相关度,挖掘贷中等场景中的存量客户价值|来看看相关实操_风控 建立存量客户的特征标签

Internet Download Manager v6.36 Build 3 Final 注册版-IDM下载工具_ternet_download_manager 注册版-程序员宅基地

文章浏览阅读1.9k次。亲测可用Internet Download Manager(简称IDM)下载速度最多达其他下载工具5倍的下载具。Internet Download Manager的续传功能可以恢复因为断线、网络问题、计算机当机甚至无预警的停电导致下传到一半的软件。此程序具有动态档案分割、多重下载点技术,而且它会重复使用现有的联机,而不需再重新联机登入一遍。聪明的in-speed技术会动态地将所有设定应用到某种..._ternet_download_manager 注册版

华为Java社招面试经历详解【已拿到offer】_广州华为java招聘-程序员宅基地

文章浏览阅读3.2k次,点赞4次,收藏28次。这篇文章主要介绍了华为Java社招面试经历,详细记录了华为java面试的流程、相关面试题与参考答案,需要的朋友可以参考下。看看自己能答对多少,如果能回答70%的题目,就大胆去阿里以及各互联网公司试试身手吧。本篇建议大家收藏、备用~华为Java社招面试(已拿到offer)之前月底华为cloudsop部门打电话叫我要不要面试,当时正处于换工作的期间,于是就把简历发给华为hr,人事审核后经过一些列面试、机试,最终顺利拿到了offer,出于未来职业规划的考量,本人手里还有其他的一些offer,还没有定下来,顺_广州华为java招聘

linux线程的基本知识_linux加锁失败的状态符-程序员宅基地

文章浏览阅读2.6k次。使用自旋锁的时候,当发生多线程竞争锁的情况,加锁失败的线程会忙等待,直到拿到锁。2、 fork两次,第一次fork的子进程在fork完成后直接退出,这样第二次fork得到的子进程就没有爸爸了,它会自动被老祖宗init收养,init会负责释放它的资源,这样就不会有“僵尸”产生了。线程的等待,第一个参数是线程的id,第二个一般为NULL,表示不关心退出的状态。第一个参数是线程id的地址。互斥锁加锁失败后,会从用户态陷入到内核态,让内核帮助我们切换线程,虽然简化了使用锁的难度,但是存在一定的性能开销成本。_linux加锁失败的状态符

000_coolprop_in_matlab在Matlab中使用CoolProp-程序员宅基地

文章浏览阅读1.2k次,点赞26次,收藏12次。在Matlab中调用Python需要先设置Python的路径(pyenv在Matlab中调用Python的函数有两种方式,一种是使用py函数,一种是使用函数;在Matlab中调用Python的CoolProp接口,需要导入CoolProp模块,然后调用函数即可。可以写一个Matlab函数,来调用PropsSI函数。使用函数;在Matlab中调用Python的CoolProp接口,需要导入CoolProp模块,然后调用函数即可。可以写一个Matlab函数,来调用PropsSI函数。_matlab中使用coolprop