JavaFX布局-TilePane

JavaFX布局-TilePane

  • 常用属性
    • alignment
    • tileAlignment
    • orientation
    • hgap
    • vgap
    • padding
  • 实现方式
    • Java
    • fxml

  • 自动排列其子节点成网格状
  • 根据容器的大小以及子节点的数量和大小自动计算最佳的排列方式
  • 推荐子节点固定大小,参差不齐的子节点,效果很诡异

常用属性

alignment

对齐方式

tilePane.setAlignment(Pos.CENTER_RIGHT);
public enum Pos {/*** Represents positioning on the top vertically and on the left horizontally.*/TOP_LEFT(TOP, LEFT),/*** Represents positioning on the top vertically and on the center horizontally.*/TOP_CENTER(TOP, HPos.CENTER),/*** Represents positioning on the top vertically and on the right horizontally.*/TOP_RIGHT(TOP, RIGHT),/*** Represents positioning on the center vertically and on the left horizontally.*/CENTER_LEFT(VPos.CENTER, LEFT),/*** Represents positioning on the center both vertically and horizontally.*/CENTER(VPos.CENTER, HPos.CENTER),/*** Represents positioning on the center vertically and on the right horizontally.*/CENTER_RIGHT(VPos.CENTER, RIGHT),/*** Represents positioning on the bottom vertically and on the left horizontally.*/BOTTOM_LEFT(BOTTOM, LEFT),/*** Represents positioning on the bottom vertically and on the center horizontally.*/BOTTOM_CENTER(BOTTOM, HPos.CENTER),/*** Represents positioning on the bottom vertically and on the right horizontally.*/BOTTOM_RIGHT(BOTTOM, RIGHT),/*** Represents positioning on the baseline vertically and on the left horizontally.*/BASELINE_LEFT(BASELINE, LEFT),/*** Represents positioning on the baseline vertically and on the center horizontally.*/BASELINE_CENTER(BASELINE, HPos.CENTER),/*** Represents positioning on the baseline vertically and on the right horizontally.*/BASELINE_RIGHT(BASELINE, RIGHT);
}    

tileAlignment

子节点对齐方式

tilePane.setTileAlignment(Pos.CENTER);

orientation

排列方式,Orientation.VERTICAL、Orientation.HORIZONTAL

tilePane.setOrientation(Orientation.HORIZONTAL);

hgap

水平间距

tilePane.setHgap(10);

vgap

垂直间距

tilePane.setVgap(10);

padding

内边距,可以单独设置上、下、左、右的内边距

tilePane.setPadding(new Insets(10, 10, 10, 10));

实现方式

Java

在这里插入图片描述

    public static TilePane demo1() {// 创建TilePaneTilePane tilePane = new TilePane();// 容器位置tilePane.setAlignment(Pos.BOTTOM_LEFT);// 子节点位置tilePane.setTileAlignment(Pos.CENTER);// 排列方向tilePane.setOrientation(Orientation.HORIZONTAL);// 水平间距tilePane.setHgap(10);// 垂直间距tilePane.setVgap(10);// 内边距tilePane.setPadding(new Insets(10, 10, 10, 10));// 圆形Circle circle = new Circle(50, Color.RED);tilePane.getChildren().addAll(circle);// 矩形Rectangle rectangle = new Rectangle(100, 80, Color.BLUE);tilePane.getChildren().addAll(rectangle);// 按钮for (int i = 0; i < 10; i++) {Button button = new Button("Button " + (i + 1));tilePane.getChildren().addAll(button);}return tilePane;}

fxml

<TilePane xmlns="http://javafx.com/javafx/17.0.2-ea" xmlns:fx="http://javafx.com/fxml/1" prefHeight="400"prefWidth="600" alignment="BOTTOM_LEFT" tileAlignment="CENTER" vgap="10" hgap="10" orientation="HORIZONTAL"><padding><Insets left="10" top="5" right="10" bottom="5"/></padding><children><Circle fill="red" radius="50"/><Rectangle fill="blue" height="80" width="100"/><Button text="button 1"/><Button text="button 2"/><Button text="button 3"/><Button text="button 4"/><Button text="button 5"/><Button text="button 6"/><Button text="button 7"/><Button text="button 8"/><Button text="button 9"/><Button text="button 10"/></children>
</TilePane>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/51149.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

普元EOS学习笔记-某些版本的EOS提供的maven获取依赖失败的问题解决

前言 普元EOS的开发包中&#xff0c;提供了maven&#xff0c;因为EOS项目的某些依赖只能从普元官方仓库获取&#xff0c;因此&#xff0c;编译EOS项目必须使用EOS提供的maven。 maven拉取依赖失败 某些版本的EOS提供的maven在编译EOS项目的时候会出现拉取失败的现象。 [FATA…

Docker 安装 Redis 单机集群总结

前言 Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于 内存 、 分布式 、可选持久性的键值对( Key-Value )存储数据库 redis版本&#xff1a;redis:6.2.13作者&#xff1a;易墨 安装单机版 安装源&#xff1a;DockerHub 默认配置文件&#xff1a;配…

安装Keil5 MDK

文章目录 前言一、安装Keil5 MDK 软件以及器件支持包1. 器件支持包离线安装方式2. 器件支持包在线安装方式 二、软件注册三、驱动安装1. 安装STLINK驱动2. 安装USB转串口驱动 前言 提示&#xff1a;本文主要用作在学习江协科大STM32入门教程后做的归纳总结笔记&#xff0c;旨在…

Maven引入与打包指定目录下的第三方sdk

针对远程仓库没有的jar包&#xff0c;应该如何引入与打包&#xff1f; 1、deploy到远程仓库 申请账号与权限&#xff0c;使用mvn deploy命令发布到远程仓库或者是私有仓库。 1、在Maven的conf/settings.xml文件配置远程仓库的认证信息 <settings><!-- 配置远程仓库…

Linux网络编程之TCP

文章目录 Linux网络编程之TCP1、TCP协议的简单认识2、TCP网络编程接口2.1、socket2.2、bind2.3、listen2.4、accept2.5、connect 3、简单的TCP网络程序3.1、服务器响应程序3.2、服务器执行命令行 4、TCP客户端connect断线重连5、应用层自定义协议以及序列化和反序列化 Linux网络…

springboot整合 knife4j 接口文档

第一步&#xff1a;引入依赖 <dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-openapi2-spring-boot-starter</artifactId><version>4.4.0</version></dependency> 第二步&#xff1a;写入配置 方…

探究Eureka服务发现机制对延迟敏感型应用的影响

引言 在现代微服务架构中&#xff0c;服务发现是实现服务间动态交互的关键组件。Eureka作为Netflix开源的服务发现框架&#xff0c;被广泛应用于Spring Cloud体系中。然而&#xff0c;对于延迟敏感型应用来说&#xff0c;服务发现机制的性能直接影响到用户体验。本文将探讨Eur…

【数据库远程连接】pycharm中相同局域网下连接别人的数据库 测试代码 不用navicat

import mysql.connector from mysql.connector import Errordef test_database_connection():try:# 连接到远程 MySQL 数据库connection mysql.connector.connect(host192.168.xxx.xxx,port3306, #数据库一般都是3306userxxx, # 替换为你的数据库用户名passwordxxxxxx, # 替…

Mindspore框架循环神经网络RNN模型实现情感分类|(五)模型训练

Mindspore框架循环神经网络RNN模型实现情感分类 Mindspore框架循环神经网络RNN模型实现情感分类|&#xff08;一&#xff09;IMDB影评数据集准备 Mindspore框架循环神经网络RNN模型实现情感分类|&#xff08;二&#xff09;预训练词向量 Mindspore框架循环神经网络RNN模型实现…

登录案例(JAVA)

练习1 package lx2;import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; import java.util.Scanner;public class demo1 {/*需求&#xff1a;写一个登陆小案例。步骤…

JS异步中async、await讲解

文章目录 1 async、await1.1 微任务队列&宏任务队列1.2 问题引入1.3 async 函数返回值1.3.1 示例1.3.2 面试示例 1.4 await 右值类型区别1.4.1 非 thenable1.4.2 thenable类型1.4.3 Promise类型1.4.3.1 没有两个then等待1.4.3.2 循环交叉输出 1.5 awaitsync 示例说明1.5.1 …

[工具] GitHub+Gridea+GitTalk 搭建个人免费博客

文章目录 起因GitHub创建个人仓库存主页创建用于Gridea连接的Token Gridea配置 GitTalk大功告成 起因 想要搭建自己的博客网站&#xff0c;又不想花钱买域名&#xff0c;也不会前端技术&#xff0c;只能求助于简单(傻逼式)且免费的博客搭建方式。偶然间看到这种方式&#xff0…

微信答题小程序产品研发-UI界面设计

高保真原型虽然已经很接近产品形态了&#xff0c;但毕竟还不能够直接交付给开发。这时就需要UI设计师依据之前的原型设计&#xff0c;进一步细化和实现界面的视觉元素&#xff0c;包括整体视觉风格、颜色、字体、图标、按钮以及交互细节优化等。 UI设计不仅关系到用户的直观感…

docker load -i xx.tar 加载本地镜像

docker load docker load命令是用来载入镜像的。 docker load -i cuda-docker.tar就将上方的cuda-docker.tar包导入到本机环境中&#xff0c;之后执行docker run命令就可以启动docker镜像

java项目数据库 mysql 迁移到 达梦

目录 一、下载安装达梦数据库 1、下载 2、解压 3、安装 二、迁移 三、更改SpringBoot 的 yml文件 1、达梦创建用户 2、修改yml 一、下载安装达梦数据库 1、下载 下载地址 https://eco.dameng.com/download/ 点击下载 开发版 (X86平台) , 然后选择操作系统并点击立…

npm 发布, npm adduser 报错,npm publish 需要认证 authorize

在 npm 发布时&#xff0c;运行 npm adduser 报错&#xff0c;在 npm adduser 未成功的情况下 去执行 npm publish 提示需要认证 &#xff08;authorize&#xff09; 原因是 npm 源 有问题&#xff0c;需要使用正确的 npm 源。 npm error need auth This command requires you …

MySQL面试篇章—MySQL锁机制

文章目录 MySQL的锁机制表级锁 & 行级锁排它锁和共享锁InnoDB行级锁行级锁间隙锁意向共享锁和意向排它锁 InnoDB表级锁死锁锁的优化建议MVCC多版本并发控制MyISAM表级锁表级锁并发插入优化锁调度优化 MySQL的锁机制 表级锁 & 行级锁 表级锁&#xff1a;对整张表加锁&…

uniapp实现局域网(内网)中APP自动检测版本,弹窗提醒升级

uniapp实现局域网&#xff08;内网&#xff09;中APP自动检测版本&#xff0c;弹窗提醒升级 在开发MES系统的过程中&#xff0c;涉及到了平板端APP的开发&#xff0c;既然是移动端的应用&#xff0c;那么肯定需要APP版本的自动更新功能。 查阅相关资料后&#xff0c;在uniapp的…

【初阶数据结构】复杂度算法题篇

旋转数组 力扣原题 方案一 循环K次将数组所有元素向后移动⼀位&#xff08;代码不通过) 时间复杂度O(n2) 空间复杂度O(1) void rotate(int* nums, int numsSize, int k) {while (k--) {int end nums[numsSize - 1];for (int i numsSize - 1; i > 0; i--) {nums[i] num…

Redis:十大数据类型

键&#xff08;key&#xff09; 常用命令 1. 字符串&#xff08;String&#xff09; 1.1 基本命令 set key value 如下&#xff1a;设置kv键值对&#xff0c;存货时长为30秒 get key mset key value [key value ...]mget key [key ...] 同时设置或者获取多个键值对 getrange…