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>
相关推荐
小天努力学java7 分钟前
【面试题】如何用两个线程轮流输出0-200的值
java·开发语言
response_L1 小时前
国产系统统信uos和麒麟v10在线打开word给表格赋值
java·c#·word·信创·在线编辑
苹果酱05671 小时前
Golang标准库——runtime
java·vue.js·spring boot·mysql·课程设计
User_芊芊君子1 小时前
【Java】类和对象
java·开发语言
martian6652 小时前
Spring Boot后端开发全攻略:核心概念与实战指南
java·开发语言·spring boot
跟着珅聪学java4 小时前
spring boot +Elment UI 上传文件教程
java·spring boot·后端·ui·elementui·vue
我命由我123454 小时前
Spring Boot 自定义日志打印(日志级别、logback-spring.xml 文件、自定义日志打印解读)
java·开发语言·jvm·spring boot·spring·java-ee·logback
lilye664 小时前
程序化广告行业(55/89):DMP与DSP对接及数据统计原理剖析
java·服务器·前端
战族狼魂7 小时前
CSGO 皮肤交易平台后端 (Spring Boot) 代码结构与示例
java·spring boot·后端
xyliiiiiL8 小时前
ZGC初步了解
java·jvm·算法