Javafx 单击按钮时从.fxml文件中的文本字段检索字符串。(创建登录场景以将场景切换到主场景)

Javafx 单击按钮时从.fxml文件中的文本字段检索字符串。(创建登录场景以将场景切换到主场景),javafx,Javafx,对编程非常陌生。我正在学习java和javaFX 我试着制作一个登录场景和一个家庭场景,目前有一个“登录”按钮,它调用控制器中的一个方法-loginButton()-在这两个场景之间切换。我不确定的部分是如何设置此方法以从用户名和密码文本/密码字段检索字符串。 我还没有兴趣用数据库来建立这个。我想要的是这样的东西(出于示例的目的,垃圾登录详细信息,我永远不会使用如此糟糕的登录信息): 我知道如何切换场景,但我不知道如何获取登录信息(在上面的示例中显示为textFromLoginField和tex

对编程非常陌生。我正在学习java和javaFX

我试着制作一个登录场景和一个家庭场景,目前有一个“登录”按钮,它调用控制器中的一个方法-loginButton()-在这两个场景之间切换。我不确定的部分是如何设置此方法以从用户名和密码文本/密码字段检索字符串。 我还没有兴趣用数据库来建立这个。我想要的是这样的东西(出于示例的目的,垃圾登录详细信息,我永远不会使用如此糟糕的登录信息):

我知道如何切换场景,但我不知道如何获取登录信息(在上面的示例中显示为textFromLoginField和textFromPasswordField)

我是如何切换场景的

        Node node=(Node) actionEvent.getSource();
        Stage stage=(Stage) node.getScene().getWindow();
        stage.setScene(new Scene(FXMLLoader.load(getClass().getResource("homeScene.fxml")),750,500));
        stage.show();
我的FXML文本:

VBox maxHeight="-Infinity" maxWidth="-Infinity" prefHeight="159.0" prefWidth="157.0" spacing="10.0" style="-fx-background-color: Black;" HBox.hgrow="NEVER">
                    <HBox.margin>
                        <Insets bottom="60.0" top="60.0" />
                    </HBox.margin>
                    <padding>
                        <Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
                    </padding>
                    <children>
                        <Label text="LOGIN:" textFill="WHITE" />
                        <TextField fx:id="loginTextField" promptText="Username" />
                        <PasswordField fx:id="passwordTextField" promptText="Password" />
                        <HBox alignment="TOP_RIGHT" prefHeight="21.0" prefWidth="137.0" spacing="10.0">
                            <children>
                                <Button mnemonicParsing="false" fx:id="loginbutton" onAction="#loginButton" style="-fx-background-color: Blue;" text="Login" textAlignment="CENTER" textFill="WHITE">
                                    <font>
                                        <Font name="System Bold" size="12.0" />
                                    </font>
                                </Button>
                                <Button mnemonicParsing="false" fx:id="helpbutton" onAction="#helpButton" style="-fx-background-color: Orange;" text="Help" textAlignment="CENTER" textFill="WHITE">
                                    <font>
                                        <Font name="System Bold" size="12.0" />
                                    </font>
                                </Button>
                            </children>
                        </HBox>
                    </children>
                </VBox>
VBox maxHeight=“-Infinity”maxWidth=“-Infinity”prefHeight=“159.0”prefWidth=“157.0”spating=“10.0”style=“-fx背景色:黑色;“HBox.hgrow=”NEVER“>
非常感谢您的帮助:)


-此外,如果我使用了任何技术词汇错误,请让我知道。我是新来的。谢谢

“==”不适用于字符串。使用textFromLoginField.equals();。查看字符串函数。

假设您已经以通常的方式在控制器中定义了一个
loginTextField
,只需执行
if(loginTextField.getText().equals(“admin”)
等操作。学习java的基本教程。。这是每个新手都需要做的…非常感谢你指出这一点!当我了解如何从textField获取字符串时,我会记住这一点:)
VBox maxHeight="-Infinity" maxWidth="-Infinity" prefHeight="159.0" prefWidth="157.0" spacing="10.0" style="-fx-background-color: Black;" HBox.hgrow="NEVER">
                    <HBox.margin>
                        <Insets bottom="60.0" top="60.0" />
                    </HBox.margin>
                    <padding>
                        <Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
                    </padding>
                    <children>
                        <Label text="LOGIN:" textFill="WHITE" />
                        <TextField fx:id="loginTextField" promptText="Username" />
                        <PasswordField fx:id="passwordTextField" promptText="Password" />
                        <HBox alignment="TOP_RIGHT" prefHeight="21.0" prefWidth="137.0" spacing="10.0">
                            <children>
                                <Button mnemonicParsing="false" fx:id="loginbutton" onAction="#loginButton" style="-fx-background-color: Blue;" text="Login" textAlignment="CENTER" textFill="WHITE">
                                    <font>
                                        <Font name="System Bold" size="12.0" />
                                    </font>
                                </Button>
                                <Button mnemonicParsing="false" fx:id="helpbutton" onAction="#helpButton" style="-fx-background-color: Orange;" text="Help" textAlignment="CENTER" textFill="WHITE">
                                    <font>
                                        <Font name="System Bold" size="12.0" />
                                    </font>
                                </Button>
                            </children>
                        </HBox>
                    </children>
                </VBox>