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



编程新手。我正在学习java和javaFX。

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

public void loginButton(javafx.event.ActionEvent actionEvent) throws IOException {
if(textFromLoginField=="admin"){
if(textFromPasswordField=="Password123"){
//run code to change scene
}
}
}

我知道如何切换场景,但我不知道如何获取登录信息(在上面的示例中显示为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>

任何帮助非常感谢:)

-另外,如果我错误地使用了任何技术词汇,请告诉我。我是新手。谢谢

">

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

最新更新