java - 为什么这个基本的 JavaFX 程序无法启动?

标签 java user-interface javafx

我正在为 Java 初学者类(class)制作贷款计算器。它将从两个文本字段(“loanAmount”和“loanYears”)中获取输入,然后单击“showTable”按钮,将生成并显示递增利率、每月付款和总体贷款总额的表格。

到目前为止,我只是开始使用一些必需的 GUI 元素构建程序。没有执行任何逻辑。但是,我很难让这个简单的舞台显示任何场景。事实上,舞台( window )根本就没有出现过。我已经将我的语法和代码结构与教科书中的指导练习进行了交叉引用,一切似乎都一致,所以我很困惑问题可能是什么。如果重要的话,该项目正在使用 Java 1.7。

import javafx.stage.Stage;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.scene.control.Label;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox;

public class LoanCalculator extends Application{

    protected BorderPane getPane() {
        HBox paneInputs = new HBox(50);
        TextField loanAmount = new TextField();
        TextField loanYears = new TextField();
        Button showTable = new Button("Show Table");
        paneInputs.getChildren().addAll(loanAmount, loanYears, showTable);
        paneInputs.setAlignment(Pos.CENTER);
        paneInputs.setStyle("-fx-border-color: green");

        BorderPane pane = new BorderPane();
        pane.setTop(paneInputs);
        return pane;
    }

    @Override
    public void start(Stage primaryStage) { //Builds stage 
        Scene scene = new Scene(getPane(), 450, 200);
        primaryStage.setTitle("Loan Calculator (16.13)");
        primaryStage.setScene(scene);
        primaryStage.show();
}

最佳答案

要运行 Java 应用程序,您需要在至少一个类中拥有一个 main() 方法,并调用该方法来启动该应用程序。对于 JavaFX 应用程序,main() 方法应调用 Application.launch()

尝试将此函数添加到类的顶部:

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

有关为什么在 Java 应用程序中需要 main() 方法的更多详细信息,请参阅 here .

关于java - 为什么这个基本的 JavaFX 程序无法启动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58800625/

相关文章:

java - Gradle - Eclipse 部署的父项目 war 中缺少子项目 jar

android - 如何在使用 Android API Level 15 的同时保持向后兼容性?

java - 从 POST 请求到模型的 spring 数据绑定(bind)

java - 为什么我们需要 JSF 标签,如果我们有 HTML 标签

qt - 如何将按钮放在 QMenu 或 QAction 控件中?

java - JavaFX 应用程序中的控制流程如何?

java - 我可以在 TableView 中使用 CheckBoxTableCell 作为让用户选择多行的方法吗?

java - JxBrowser 6 在 osx el capitan 中挂起

java - RichFaces - 组合框中包含字母或组合的建议

Java-Stream - 具有无限流的 mapMulti()