JavaFX:控件Group。

group组件是一个容器组件,它不对其子组件应用特殊布局。所有子组件(节点)都位于0,0处。JavaFX组组件通常用于将一些效果或转换应用于一组控件(作为一个组)。如果需要对组内的子级进行一些布局,请将它们嵌套在布局组件内,然后将布局组件添加到组中。

Group的功能

  • Group可以管理一组节点
  • Group可以对管理的节点进行增删改查的操作
  • Group可以管理节点的属性

测试一:直接将控件添加到容器Group中

测试容器Group。Group容器将控件依次放入。控件重叠放置在容器Group对象中,先放的控件在下层,后放的在上层。如果下小上大则只能看到后添加的控件,反之可以看到前面添加的控件。

测试代码:

package javafx8.ch10;import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;/*** @copyright 2003-2023* @package   javafx8.ch10* @file      GroupTest.java* @date      2023-07-01 20:06* @author    qiao wei* @version   1.0* @brief     测试容器Group。Group容器将控件依次放入。控件重叠放置在容器Group对象中,先放的控件在下层,后放的在*            上层。如果下小上大则只能看到后添加的控件,反之可以看到前面添加的控件。* @history*/
public class GroupTest extends Application {public GroupTest() {}@Overridepublic void start(Stage primaryStage) throws Exception {Button smallButton = new Button("Small button");Button bigButton = new Button("This is a big button");Group group = new Group();// 按钮控件放置顺序使得大小按钮都能显示。group.getChildren().addAll(bigButton, smallButton);Button smallButton01 = new Button("Small button 01");Button bigButton01 = new Button("This is a big button 01");Group group1 = new Group();// 按钮控件放置顺序使得只能大按钮显示。group1.getChildren().addAll(smallButton01, bigButton01);HBox hBox = new HBox(5);hBox.getChildren().addAll(group, group1);primaryStage.setScene(new Scene(hBox));primaryStage.show();}public static void main(String[] args) {Application.launch(GroupTest.class, args);}
}

测试结果:

测试二:将控件间Group旋转、阴影设置,影响容器中的所有控件

测试代码:

package javafx8.ch10;import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.effect.DropShadow;
import javafx.scene.layout.Border;
import javafx.scene.layout.BorderStroke;
import javafx.scene.layout.BorderStrokeStyle;
import javafx.scene.layout.BorderWidths;
import javafx.scene.layout.CornerRadii;
import javafx.scene.layout.HBox;
import javafx.scene.paint.Color;
import javafx.stage.Stage;/*** @copyright 2003-2023* @package   learn.javafx8.javafx8.ch10* @file      GroupEffect.java* @date      2023-08-19 15:31* @author    qiao wei* @version   1.0* @brief     Layout。对容器Group对象进行设置,影响作用于Group容器中所有控件。* @history*/
public class GroupEffect extends Application {public GroupEffect() {}@Overridepublic void start(Stage primayStage) throws Exception {
//        setWidget(primayStage);setWidget01(primayStage);}public static void main(String[] args) {try {Application.launch(GroupEffect.class, args);} catch (Exception exception) {exception.printStackTrace();}}/*** @class   GroupEffect* @date    2023-12-28 17:22* @author  qiao wei* @version 1.0* @brief   设置控件Group中所有控件的位置,设置的位置只能是控件Group的绝对位置。* @param   * @return  * @throws*/private void setWidget(Stage stage) {// Create two buttons。Set the absolute locations of the buttons。Button okButton = new Button("OK");Button cancelButton = new Button("Cancel");okButton.setLayoutX(100);okButton.setLayoutY(100);cancelButton.setLayoutX(150);cancelButton.setLayoutY(10);/*** Group对象的所有设置都作用于所有子控件。* 1:Set a drop shadow effect.* 2:Rotate by 10 degrees clockwise.* 3:Set the opacity to 80%.*/Group root = new Group();root.setEffect(new DropShadow());root.setRotate(45);root.setOpacity(0.8);root.getChildren().addAll(okButton, cancelButton);stage.setScene(new Scene(root));stage.show();}/*** @class   GroupEffect* @date    2023-12-28 17:23* @author  qiao wei* @version 1.0* @brief   设置控件Group的边框、阴影、旋转属性。* @param   * @return  * @throws*/private void setWidget01(Stage stage) {// 创建2个按钮实例。Button okButton = new Button("OK");Button cancelButton = new Button("Cancel");HBox hBox = new HBox(5);hBox.getChildren().addAll(okButton, cancelButton);hBox.setBorder(new Border(new BorderStroke(Color.BLUE,BorderStrokeStyle.DASHED,new CornerRadii(45),new BorderWidths(3))));Group root = new Group(hBox);root.setEffect(new DropShadow());root.setRotate(15);stage.setScene(new Scene(root));stage.show();}
}

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

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

相关文章

一种删除 KubeSphere 中一直卡在 Terminating 的 Namespace--KubeSphere Logging System的简单方法

文章目录 一、问题提出二、删除方法1,获取kubesphere-logging-syste的详细信息json文件2,编辑kubesphere-logging-system.json3,执行清理命令 三、检查结果 一、问题提出 在使用 KubeSphere 的时候发现有一个日志服务KubeSphere Logging Sys…

C++ DAY1 作业

1.定义自己的命名空间myspace&#xff0c;并在myspace中定义一个字符串&#xff0c;并实现求字符串长度 #include <iostream>using namespace std; namespace myspace {string str;int length_fun(){getline(cin,str);int i 0;while(str[i] ! \0){i;}return i;}} using…

【线性代数】通过矩阵乘法得到的线性方程组和原来的线性方程组同解吗?

一、通过矩阵乘法得到的线性方程组和原来的线性方程组同解吗&#xff1f; 如果你进行的矩阵乘法涉及一个线性方程组 Ax b&#xff0c;并且你乘以一个可逆矩阵 M&#xff0c;且产生新的方程组 M(Ax) Mb&#xff0c;那么这两个系统是等价的&#xff1b;它们具有相同的解集。这…

《PCI Express体系结构导读》随记 —— 第I篇 第1章 PCI总线的基本知识(11)

接前一篇文章&#xff1a;《PCI Express体系结构导读》随记 —— 第I篇 第1章 PCI总线的基本知识&#xff08;10&#xff09; 1.3 PCI总线的存储器读写总线事务 1.3.2 Posted和Non-Posted传送方式 PCI总线规定了两类数据传送方式&#xff0c;分别是Posted和Non-Posted数据传送…

机器人中的数值优化之牛顿共轭梯度法

欢迎大家关注我的B站&#xff1a; 偷吃薯片的Zheng同学的个人空间-偷吃薯片的Zheng同学个人主页-哔哩哔哩视频 (bilibili.com) 本文ppt来自深蓝学院《机器人中的数值优化》 如何解决Hessian矩阵非正定的情况 求解线性系统需要很精确么 引入截断的机制&#xff0c;如果Hessia…

idea中终端Terminal页面输入命令git log后如何退出

1、idea中Terminal输入命令git log后如何退出&#xff1f; 2、解决 输入q键会自动退出git log命令

k8s搭建(三、k8s从节点创建)

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

中间件系列 - Redis入门到实战(原理篇)

前言 学习视频&#xff1a; 黑马程序员Redis入门到实战教程&#xff0c;深度透析redis底层原理redis分布式锁企业解决方案黑马点评实战项目 中间件系列 - Redis入门到实战 本内容仅用于个人学习笔记&#xff0c;如有侵扰&#xff0c;联系删除 学习目标 Redis数据结构Redis网…

基于Wenet长音频分割降噪识别

Wenet是一个流行的语音处理工具&#xff0c;它专注于长音频的处理&#xff0c;具备分割、降噪和识别功能。它的长音频分割降噪识别功能允许对长时间录制的音频进行分段处理&#xff0c;首先对音频进行分割&#xff0c;将其分解成更小的段落或语音片段。接着进行降噪处理&#x…

去掉图片水印但不伤原图的技巧分享

在数字时代&#xff0c;图片水印已成为保护知识产权的一种重要手段。然而&#xff0c;有时候我们需要在某些场合使用无水印的图片&#xff0c;例如在个人博客、社交媒体或商业广告中。如何在不损伤原图的情况下安全地去掉图片水印呢&#xff1f;本文将介绍几种有效的方法。 首先…

数据仓库 基本信息

数据仓库基本理论 数据仓库&#xff08;英语&#xff1a;Data Warehouse&#xff0c;简称数仓、DW&#xff09;,是一个用于存储、分析、报告的数据系统。数据仓库的目的是构建面向分析的集成化数据环境&#xff0c;为企业提供决策支持&#xff08;Decision Support&#xff09…

1.2.3 TCP/IP参考模型

一、OSI参考模型与TCP/IP参考模型 1、应用层&#xff1a;将表示层和会话层都纳入其中&#xff0c;形成一个比较大的层次&#xff0c;包含所有的高层协议 2、传输层&#xff1a;实现端到端的&#xff0c;进程与进程之间的通信。 3、网际层&#xff1a;TCP/IOP模型中最关键的部…