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>
相关推荐
空の鱼5 分钟前
java开发,IDEA转战VSCODE配置(mac)
java·vscode
P7进阶路1 小时前
Tomcat异常日志中文乱码怎么解决
java·tomcat·firefox
小丁爱养花2 小时前
Spring MVC:HTTP 请求的参数传递2.0
java·后端·spring
CodeClimb2 小时前
【华为OD-E卷 - 第k个排列 100分(python、java、c++、js、c)】
java·javascript·c++·python·华为od
等一场春雨2 小时前
Java设计模式 九 桥接模式 (Bridge Pattern)
java·设计模式·桥接模式
带刺的坐椅2 小时前
[Java] Solon 框架的三大核心组件之一插件扩展体系
java·ioc·solon·plugin·aop·handler
不惑_3 小时前
深度学习 · 手撕 DeepLearning4J ,用Java实现手写数字识别 (附UI效果展示)
java·深度学习·ui
费曼乐园3 小时前
Kafka中bin目录下面kafka-run-class.sh脚本中的JAVA_HOME
java·kafka
feilieren3 小时前
SpringBoot 搭建 SSE
java·spring boot·spring
阿岳3164 小时前
Java导出通过Word模板导出docx文件并通过QQ邮箱发送
java·开发语言