JavaFX布局-TabPane

JavaFX布局-TabPane

  • 常用属性
    • padding
    • side
    • tabClosingPolicy
    • tabDragPolicy
  • 实现方式
    • Java实现
    • fxml实现

  • 组织一组tab的容器,可以设置关闭,拖拽等
  • 每个tab内容可以设置不同容器数据

常用属性

padding

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

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

side

设置tabs的位置,LEFT

tabPane.setSide(Side.LEFT);public enum Side {TOP,BOTTOM,LEFT,RIGHT;
}

tabClosingPolicy

tab关闭策略

tabPane.setTabClosingPolicy(TabPane.TabClosingPolicy.UNAVAILABLE);public enum TabClosingPolicy {/*** 仅仅当前选中的tab可以关闭*/SELECTED_TAB,/*** 所有tab都可关闭*/ALL_TABS,/*** 所有tab都不可关闭.*/UNAVAILABLE}

tabDragPolicy

拖拽策略

tabPane.setTabDragPolicy(TabPane.TabDragPolicy.FIXED);public enum TabDragPolicy {/*** 固定不允许拖拽*/FIXED,/*** 允许拖拽*/REORDER}

实现方式

Java实现

在这里插入图片描述

 public static TabPane demo1() {TabPane tabPane = new TabPane();// 内边距tabPane.setPadding(new Insets(10, 10, 10, 10));// 位置tabPane.setSide(Side.LEFT);// 关闭策略tabPane.setTabClosingPolicy(TabPane.TabClosingPolicy.UNAVAILABLE);// 拖拽策略tabPane.setTabDragPolicy(TabPane.TabDragPolicy.FIXED);tabPane.setRotateGraphic(false);tabPane.setCenterShape(false);Tab tab1 = new Tab("Tab 1");FlowPane flowPane1 = new FlowPane();flowPane1.setOrientation(Orientation.HORIZONTAL);for (int i = 1; i <= 5; i++) {flowPane1.getChildren().add(new Button("Button " + i));}tab1.setContent(flowPane1);Tab tab2 = new Tab("Tab 2");FlowPane flowPane2 = new FlowPane();flowPane2.setOrientation(Orientation.VERTICAL);for (int i = 6; i <= 10; i++) {flowPane2.getChildren().add(new Button("Button " + i));}tab2.setContent(flowPane2);tabPane.getTabs().addAll(tab1, tab2);return tabPane;}

fxml实现

在这里插入图片描述

<StackPane prefHeight="400" prefWidth="600" xmlns="http://javafx.com/javafx/17.0.2-ea"xmlns:fx="http://javafx.com/fxml/1"><children><TabPane prefHeight="200.0" prefWidth="200.0" tabClosingPolicy="ALL_TABS" side="TOP" tabDragPolicy="REORDER"rotateGraphic="true" centerShape="true"><tabs><Tab text="Tab 1"><content><FlowPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0"orientation="VERTICAL"><Button text="Button 1"/><Button text="Button 2"/><Button text="Button 3"/><Button text="Button 4"/><Button text="Button 5"/></FlowPane></content></Tab><Tab text="Tab 2"><content><FlowPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0"orientation="HORIZONTAL"><Button text="Button 6"/><Button text="Button 7"/><Button text="Button 8"/><Button text="Button 9"/><Button text="Button 10"/></FlowPane></content></Tab></tabs></TabPane></children>
</StackPane>

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

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

相关文章

docker部署java项目(war包方式)

场景描述:java项目war包,在开发开电脑上使用dockerfile构建镜像,上传镜像到客户服务器中使用docker加载docker镜像,然后部署。 目录 一、本地环境安装 docker git 二、服务器环境安装 docker 三、构建docker镜像(win系统) 四、注意事项 (1)系统架构 (2)使…

如何准备专利申请书的摘要部分?

如何准备专利申请书的摘要部分&#xff1f;

【EI会议征稿通知】第五届大数据、人工智能与软件工程国际研讨会(ICBASE 2024)

重要信息 会议官网&#xff1a;www.icbase.org&#xff08;查看详情&#xff09; 中文主页&#xff1a;【往届会后3个月检索】第五届大数据、人工智能与软件工程国际研讨会&#xff08;ICBASE 2024&#xff09;_艾思科蓝_学术一站式服务平台 会议时间&#xff1a;2024年9月2…

C++笔记---类和对象(中)

1. 类的默认成员函数 默认成员函数就是用户没有显式实现&#xff0c;编译器会自动生成的成员函数称为默认成员函数。 一个类&#xff0c;我们不写的情况下编译器会默认生成以下6个默认成员函数&#xff0c;分别为&#xff1a;构造函数&#xff0c;析构函数&#xff0c;拷贝构…

C#中的Winform基础

program 每个Windows应用程序都会有一个Program类——程序入口点 [STAThread] ----指示应用程序的COM线程模型是单线程单元&#xff08;如果无此特性&#xff0c;无法工作&#xff09; static voidMain() —— 入口 System.Windows.Forms.Application类提供一系列静态方法和…

Bootstrap框架介绍

1、Bootstrap框架的下载和使用 Bootstrap框架是基于HTML、CSS、JavaScript的CCS/HTML框架,是一种封装好的前端框架。它包括js、css、front字体样式库。该框架下载链接:https://v3.bootcss.com/getting-started/#download,并选择下载源码。 建一个BootstrapDemo文件夹,将js…

GoAccess实战秘籍:从新手到高手,跨越那些“坑”与“惑”!

GoAccess实战秘籍:从新手到高手,跨越那些“坑”与“惑”! 致读者: 点击上方 “雪之梦技术驿站” → 点击右上角“ … ”→ 点选“设为星标★ ” 加上星标,就不会找不到我啦! 偷偷溜进文章的小广告,别害羞,点进去瞅瞅,说不定能发现什么宝藏呢!文末那个也别错过,说不定…

鼻咽癌综述

小罗碎碎念 本期推文主题&#xff1a;鼻咽癌综述 这篇文章提供了一个全面的综述&#xff0c;探讨了鼻咽癌&#xff08;NPC&#xff09;的关键研究进展&#xff0c;包括病理机制、治疗、筛查和生物标志物的发展。 文章首先强调了NPC在特定地理区域的流行情况&#xff0c;并讨论了…

nginx反向代理和负载均衡+安装jdk-22.0.2

ps -aux|grep nginx //查看进程 nginx 代理 nginx代理是负载均衡的基础 主机&#xff1a;192.168.118.60 这台主机只发布了web服务&#xff0c;没有做代理的任何操作 修改一下index.html中的内容 echo "this is java web server" > /usr/local/nginx/htm…

Java游戏源码:象棋网络对战版

学习java朋友们&#xff0c;福利来了&#xff0c;今天小编给大家带来了一款象棋网络对战版源码。 源码搭建和讲解 源码分为客户端和服务器&#xff0c;采用java原生 java.net.Socket 实现&#xff0c;服务器主循环代码&#xff1a; import java.net.ServerSocket; import jav…

【吊打面试官系列-Dubbo面试题】Dubbo 配置文件是如何加载到 Spring 中的 ?

大家好&#xff0c;我是锋哥。今天分享关于 【Dubbo 配置文件是如何加载到 Spring 中的 &#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; Dubbo 配置文件是如何加载到 Spring 中的 &#xff1f; Spring 容器在启动的时候&#xff0c;会读取到 Spring 默认的一些…

nodejs多版本随心切换-windows

nodejs多版本控制 1. 安装 nvm github下载地址 不需要卸载已安装的nodejs&#xff0c;安装时会让你选择nodejs的位置&#xff0c;可修改为你已经安装的路径&#xff0c;会自动搜索已安装版本&#xff0c;并进行弹窗询问&#xff0c;选择托管即可 2. 修改配置文件 在 nvm 安装…

案例分享|Alluxio在自动驾驶数据闭环中的应用

分享嘉宾&#xff1a; 孙涛 - 中汽创智智驾工具链数据平台开发专家 关于中汽创智&#xff1a; 中汽创智科技有限公司&#xff08;以下简称“中汽创智”&#xff09;由中国一汽、东风公司、南方工业集团、长安汽车和南京江宁经开科技共同出资设立。聚焦智能底盘、新能动力、智…

K8S可视化管理平台KubeSphere

什么是 KubeSphere &#xff1f; KubeSphere 是一款开源项目&#xff0c;在目前主流容器调度平台 Kubernetes 之上构建的企业级分布式多租户容器管理平台&#xff0c;提供简单易用的操作界面以及向导式操作方式&#xff0c;在降低用户使用容器调度平台学习成本的同时&#xff…

7.怎么配置一个axios来拦截前后端请求

首先创建一个axios.js文件 导入我们所需要的依赖 import axios from "axios"; import Element from element-ui import router from "./router"; 设置请求头和它的类型和地址 注意先注释这个url,还没有解决跨域问题,不然会出现跨域 // axios.defaults.…

计算机网络-http协议和https的加密原理

HTTP&#xff08;HyperText Transfer Protocol&#xff0c;超文本传输协议&#xff09;是用于在万维网&#xff08;World Wide Web&#xff09;上传输超文本的基础协议。它定义了客户端&#xff08;通常是浏览器&#xff09;和服务器之间的文本数据传输格式和规则。以下是HTTP的…

假如家里太大了,wifi连不上了怎么办

最近有个土豪朋友抱怨&#xff0c;他家里太大了&#xff0c;一个路由器的Wi-Fi信号根本无法覆盖他们家的每个房间&#xff0c;都没办法上网看奥运会比赛了。&#xff08;还好我是穷人&#xff0c;就没有这种烦恼T_T&#xff09;。 然后我问他为何不用一个路由器作主路由器&…

BGP对等体组、聚合、路由反射器、联盟、团体属性

一.实验拓扑 二.实验需求 1.AS1中存在两个环回&#xff0c;一个地址为192.168.1.0/24&#xff0c;该地址不能在任何协议中宣告 As3中存在两个环回&#xff0c;一个地址为192.168.2.0/24,、该地址不能在任何协议中宣告&#xff0c;最终要求这两个环回可以ping通; 2.整个AS2的I…

vue el-input 输入框下拉显示匹配数据

1、效果图&#xff1a; 2、需求&实现&#xff1a; 输入条件 下面匹配查询到的数据有多少个 需要调用后端接口展示&#xff0c;后端查询到之后返回条数 前端展示 3、具体代码实现&#xff1a; html&#xff1a; 图片需要自己根据实际情况增加 // 查询 重置 筛选 本文章…

delphi 12 学习如何登陆网站下载文件

启动时等待验证码. 输入验证码后,等待处理数据 处理完成后,显示数据 实现原理:利用已有的账号和密码登录后产生的cookie,向服务器请求数据.返回的数据是JSON格式,后期需要自己整理. 注意,请在程序中使用同一个TnetHttpClient控件来完成.因为里面保存了cookie信息 需要了解的知…