如何在JavaFX中设置按钮文本?

我正在尝试使用以下代码设置按钮文本:

public void initialize(URL location, ResourceBundle resources) {

// TODO Auto-generated method stub

//checking to see whether these buttons were loaded from the FXML file

assert fx_btnStart != null : "fx:id=\"fx_btnStart\" was not injected: Check your FXML file 'FX-Timer.fxml'.";

assert fx_btnStop != null : "fx:id=\"fx_btnStop\" INJECTION ERROR";

assert fx_btnHourUp != null : "fx:id=\"fx_btnHourUp\" INJECTION ERROR";

assert fx_btnHourDown != null : "fx:id=\"fx_btnHourDown\" INJECTION ERROR";

assert fx_btnMinuteUp != null : "fx:id=\"fx_btnMinuteUp\" INJECTION ERROR";

assert fx_btnMinuteDown != null : "fx:id=\"fx_btnMinuteDown\" INJECTION ERROR";

//ending of initialization of FXML elements

//set words for buttons yo.

fx_btnHourUp.setText("HELLO");

}

这是我的FXML:

<children>

<Button mnemonicParsing="false" prefHeight="53.0" prefWidth="92.0"

text="Hup" textAlignment="CENTER" alignment="CENTER" id="fx_btnHourUp"/>

<Button mnemonicParsing="false" prefHeight="37.0" prefWidth="92.0"

text="Hdown" GridPane.columnIndex="1" textAlignment="CENTER"

alignment="CENTER" id="fx_btnHourDown" />

<Button mnemonicParsing="false" prefHeight="44.0" prefWidth="92.0"

text="Mup" GridPane.columnIndex="2" textAlignment="CENTER"

alignment="CENTER" id="fx_btnMinuteUp" />

<Button mnemonicParsing="false" prefHeight="39.0" prefWidth="122.0"

text="Mdown" GridPane.columnIndex="3" textAlignment="CENTER"

alignment="CENTER" id="fx_btnMinuteDown" />

</children>

但这行不通,我不明白为什么,还有其他人知道如何使用JavaFX设置按钮文本吗?>。>;

我觉得JavaFX不像Swing那样简单…但是无论如何,有人知道我在做什么错吗?另外,有没有人知道有什么资源可以学习FXML?我喜欢FXML而不是用Java进行编码,但是似乎没有太多的东西,我是否是世界上唯一喜欢FXML而不是JavaFX

GUI编码的人?

回答:

您确定您的元素实际上不是null,并且您的assert语句实际上在执行它们应做的事情吗?单击我以获取有关使用断言语句的信息。确保变量声明保留为@FXML

private Button fx_btnHourUp;,并且永远不要通过实例化按钮fx_btnHourUp = new Button();

您是否正在使用SceneBuilder

2.0创建fxml?它是一个程序,您可以在设计fxml的同时避免许多此类常见错误。在这里下载链接。

以上是 如何在JavaFX中设置按钮文本? 的全部内容, 来源链接: utcz.com/qa/420378.html

回到顶部