JavaFX基本控件-Label

JavaFX基本控件-Label

常用属性

text

设置文本内容

java 复制代码
label.setText("这是一个测试数据");

padding

内边距

java 复制代码
label.setPadding(new Insets(5, 10, 5, 10));

alignment

文本对齐方式,单行显示内容少的时候体现

java 复制代码
label.setAlignment(Pos.CENTER);

textAlignment

文本对齐方式,在多行文本换行的时候着重体现

java 复制代码
label.setTextAlignment(TextAlignment.LEFT);

width

java 复制代码
label.setMinWidth(100);
label.setPrefWidth(100);
label.setMaxWidth(200);

height

java 复制代码
label.setMinHeight(50);
label.setPrefHeight(50);
label.setMaxHeight(100);

tooltip

提示信息,鼠标放上去会给出一个提示

java 复制代码
label.setTooltip(new Tooltip("测试Tooltip"));

border

设置边框

java 复制代码
Border border = new Border(new BorderStroke(Paint.valueOf("red"), BorderStrokeStyle.SOLID, new CornerRadii(20), new BorderWidths(3)));
label.setBorder(border);

wrapText

设置是否自动换行

java 复制代码
label.setWrapText(true);

ellipsisString

设置超长的省略号(自定义字符串)

java 复制代码
label.setEllipsisString("^^^^^^");

underline

设置文本下划线

java 复制代码
label.setUnderline(true);

实现方式

Java实现

java 复制代码
public static VBox demo1() {
   VBox vBox = new VBox();
   vBox.setPadding(new Insets(10, 10, 5, 20));
    Label label = build();
    label.setBorder(new Border(new BorderStroke(Paint.valueOf("red"), BorderStrokeStyle.SOLID, new CornerRadii(20), new BorderWidths(3))));
    label.setText("这是一个测试数据,测试一下换行数据,越野与呜呜呜呜测试,多行越界");
    label.setAlignment(Pos.CENTER_RIGHT);
    label.setTextAlignment(TextAlignment.RIGHT);
    vBox.getChildren().add(label);

    label = build();
    label.setBorder(new Border(new BorderStroke(Paint.valueOf("blue"), BorderStrokeStyle.SOLID, new CornerRadii(20), new BorderWidths(3))));
    label.setText("单行数据");
    label.setAlignment(Pos.CENTER_LEFT);
    label.setTextAlignment(TextAlignment.RIGHT);
    vBox.getChildren().add(label);

    label = new Label();
    label.setBorder(new Border(new BorderStroke(Paint.valueOf("green"), BorderStrokeStyle.SOLID, new CornerRadii(20), new BorderWidths(3))));
    label.setText("这是一个测试数据,测试数据多行捕不越界");
    label.setAlignment(Pos.CENTER_RIGHT);
    label.setTextAlignment(TextAlignment.RIGHT);
    vBox.getChildren().add(label);
    return vBox;
}

private static Label build() {
    Label label = new Label();
    label.setBorder(new Border(new BorderStroke(Paint.valueOf("red"), BorderStrokeStyle.SOLID, new CornerRadii(20), new BorderWidths(3))));
    label.setPadding(new Insets(5, 10, 5, 10));
    label.setTooltip(new Tooltip("测试Tooltip"));
    label.setText("测试数据");
    label.setAlignment(Pos.CENTER_RIGHT);
    label.setTextAlignment(TextAlignment.RIGHT);

    label.setMinWidth(100);
    label.setPrefWidth(100);
    label.setMaxWidth(200);

    label.setMinHeight(50);
    label.setPrefHeight(50);
    label.setMaxHeight(100);

    label.setWrapText(true);
    label.setEllipsisString("^^^^^^");
    return label;
}

fxml实现

fxml 复制代码
 <Label alignment="CENTER" ellipsisString="^^^^^^" maxHeight="100" maxWidth="200" prefHeight="50" prefWidth="100"
       text="这是一个测试数据,测试一下换行数据" textAlignment="RIGHT" textFill="#877f3a"
       underline="true" wrapText="true">
    <padding>
        <Insets bottom="10.0" left="10.0" right="10.0" top="10.0"/>
    </padding>
    <font>
        <Font name="Arial Bold" size="14.0"/>
    </font>
</Label>
相关推荐
不会写DN1 小时前
通过php 中的Route:: 的写法了解什么是静态类调用
android·java·php
小刘|1 小时前
SpringAIAlibaba快速接入阿里云百炼
java·spring boot·spring·maven
我命由我123451 小时前
由 ImageView 获取到的 Drawable 对象,它的 intrinsicWidth、intrinsicWidth 与实际图片的尺寸
java·开发语言·java-ee·android studio·android jetpack·android-studio·android runtime
Han.miracle1 小时前
Jackson 工具类详解:ObjectMapper 配置、泛型擦除、TypeReference 与 JavaType
java·spring boot·spring
guslegend1 小时前
Java 创建对象有几种方式
java·开发语言
暗暗别做白日梦1 小时前
延时消息的几种实现方式及优缺点
java
极客先躯1 小时前
高级java每日一道面试题-2026年02月08日-实战篇[Docker]-如何实现容器的快照和恢复?
java·运维·docker·容器·备份·持久化·恢复
布朗克1681 小时前
29 反射机制
java·开发语言·反射
San813_LDD1 小时前
[数据结构]共享栈与双端队列:算法思想分析及C语言实现
java·开发语言·数据结构
我是一颗柠檬1 小时前
【Java项目技术亮点】全链路分层限流:从网关到数据库的多层防护体系
java·开发语言·数据库