Javafx 为什么BorderPane不显示任何内容

Javafx 为什么BorderPane不显示任何内容,javafx,gluon,borderpane,Javafx,Gluon,Borderpane,我创建了一个移动应用程序,现在我要让代码更简单、更精确。我想将其中一个页面从大量集群切换到边界窗格,因为这将使我的代码更干净。出于某种原因,当我注释工作代码以使用边框窗格时,我的标签和其他所有内容都不会显示。我觉得好像这是一件我看不到的小事 我试过制造一个场景,设置左动作 public BookNow(){ BorderPane bookClub = new BorderPane(); Vbox labels = new VBox(); Label city = new Labels("Cit

我创建了一个移动应用程序,现在我要让代码更简单、更精确。我想将其中一个页面从大量集群切换到边界窗格,因为这将使我的代码更干净。出于某种原因,当我注释工作代码以使用边框窗格时,我的标签和其他所有内容都不会显示。我觉得好像这是一件我看不到的小事

我试过制造一个场景,设置左动作

public BookNow(){

BorderPane bookClub = new BorderPane();
Vbox labels = new VBox();
Label city = new Labels("City: ");
Label venue= new Labels("Venue: ");   
Label date = new Labels("Date: ");   
Label appArrivalTime = new Labels("Approxiamte Time of Arrival: ");

labels.getChildren().addAll(city, venue, date, appArrivalTime);
bookClub.setLeft(labels);

}
它应该只显示边框窗格左侧的标签。

已更新

在哪里插入
边框窗格
元素?您必须将组件插入到调用到主FXML
阶段的
场景
实例中,然后使用所有元素初始化
边框窗格
。此外,将代码信息写入FXML文件比写入Java类更清晰:

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

<?import javafx.scene.layout.BorderPane?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.layout.VBox?>

<BorderPane xmlns:fx="http://javafx.com/fxml/1">
    <left>
        <VBox>
            <Label>City: </Label>
            <Label>Venue: </Label>
            <Label>Date: </Label>
            <Label>Approximate Time of Arrival: </Label>
        </VBox>
    </left>
</BorderPane>

它是否回答了您的问题?

如果这是与
边框窗格
相关的所有代码,您永远不会将其添加到场景或场景的父部分。否则,没有足够的信息来诊断问题;请提供一个演示该问题的例子。BorderPane是否仅在场景中工作?如果是,您如何将其与Gluon mobile pluginI一起使用?我不熟悉Gluon mobile。如果有某种抽象隐藏了
场景的使用
,请使用它。无论是哪种情况,您都需要将
边框窗格
添加到某些内容中;你的代码片段所做的就是创建它,然后扔掉它。Gluon似乎为他们的产品提供了一些可能被证明是有用的东西。你对Mike,kleopatra有什么答案吗?参加几年这样的活动——你将了解为什么规则是这样的,以及为什么教育新手遵守规则很重要;)我以前没有使用过fxml,所以我不熟悉BorderPane是否需要场景才能工作?我正在为移动应用程序使用Glion插件是的,你需要用Java声明它,我已经更新了答案。
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class Main extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception {
        Scene scene = new Scene(FXMLLoader.load(getClass().getResource("/package/path/to/the/fxml/file/view.fxml")));
        primaryStage.setScene(scene);
        primaryStage.show();
    }

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