gpt4 book ai didi

java - 如何通过 id 更改 fxml 标签文本

转载 作者:搜寻专家 更新时间:2023-11-01 01:25:35 25 4
gpt4 key购买 nike

我的 fxml 文件上有标签:

 <children>
<Label fx:id="lblTest" text="Label" />
</children>

如何将主/ Controller java 文件中的文本从“Label”更改为“Hello”?

我刚开始学习 JavaFX 的基础知识,我不确定是否可行

最佳答案

问题

您想在属于 FXML/Controller/MainApp 的标签上设置文本

解决方案

通常你有三个文件:

  1. FXML 文档
  2. FXML Controller
  3. 扩展应用程序并覆盖启动方法的类

一个小例子:

标签文本.java

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class LabelText extends Application {

@Override
public void start(Stage stage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml"));
Scene scene = new Scene(root);
stage.setScene(scene);
stage.show();
}

public static void main(String[] args) {
launch(args);
}
}

FXMLDocument.fxml

<?xml version="1.0" encoding="UTF-8"?>

<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>

<AnchorPane id="AnchorPane" prefHeight="200" prefWidth="320" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8.0.40" fx:controller="labeltext.FXMLDocumentController">
<children>
<Label fx:id="lblTest" layoutX="126.0" layoutY="92.0" minHeight="16" minWidth="69" />
</children>
</AnchorPane>

FXMLDocumentController.java

package labeltext;

import javafx.fxml.FXML;
import javafx.scene.control.Label;

public class FXMLDocumentController {

@FXML
private Label lblTest;

@FXML
private void initialize() {
lblTest.setText("I'm a Label.");
}
}

就是这样。

关于java - 如何通过 id 更改 fxml 标签文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32806068/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com