我有一个live javafx用户应用程序,它有一个标签:答案数量/问题数量,答案数量随着用户回答问题而增加,而问题数量随着一个类向用户提问而增加。
标签最初看起来像-
0/0
我想将两个不同的变量(NumberOfAnswers,NumberOfQuestions)绑定到这个标签上,比如说,如果我向用户抛出了10个问题,而用户回答了2个,那么应该是这样的:
2/10
Label ansQuestLbl = new Label("0/0");
if (answerConnector!= null) {
log.info("Going to bind , No of answers: "+answerConnector.getNoOfAnswers());
ansQuesLbl.textProperty().bind(answerConnector.getNoOfAnswers().asString());
log.info("Bound number of answers with label on UI");
}
这只会将多个答案绑定到标签。
提前谢谢。
<代码>绑定。格式可用于此目的:
ansQuesLbl.textProperty().bind(Bindings.format("%d/%d",
answerConnector.noOfAnswersProperty(),
answerConnector.noOfQuestionsProperty()));
你只需要Bindings.concat(Object... args)
:
例如:
IntegerProperty noOfAnswers = answerConnector.noOfAnswersProperty();
IntegerProperty noOfQuestions = answerConnector.noOfQuestionsProperty();
ansQuesLbl.textProperty().bind(Bindings.concat(noOfAnswers, "/", noOfQuestions));
或:
IntegerProperty noOfAnswers = answerConnector.noOfAnswersProperty();
IntegerProperty noOfQuestions = answerConnector.noOfQuestionsProperty();
ansQuesLbl.textProperty().bind(noOfAnswers.asString().concat("/").concat(noOfQuestions.asString()));
注意:为了避免属性出现问题,我建议遵循javafx命名约定,以便answerConnector的类如下所示:
public class AnswerConnector {
private final IntegerProperty noOfAnswers = new SimpleIntegerProperty(0);
public IntegerProperty noOfAnswersProperty() {
return noOfAnswers;
}
public int getNoOfAnswers() {
return noOfAnswers.get();
}
public void setNoOfAnswers(int noOfAnswers) {
this.noOfAnswers.set(noOfAnswers);
}
// same for noOfQuestions
}
问题内容: 是否可以将JavaFX Slider的Double-Value绑定到Label?我想得到这样的东西: 谢谢您的帮助。 问题答案: 假设您有一个返回a 的属性访问器方法,则可以执行 如果要使用Formatting String格式化字符串 ,请执行以下操作
是否可以将JavaFX滑块中的双精度值绑定到标签?我想得到这样的东西: 谢谢你的帮助。
我想绑定JavaFX与值。 我试过了,例如。 或 但我总是得到NullPointerException。 我怎么才能修好它?
这不会改变我的标签。只有第一个运行,其他的不会改变。在Java摇摆中,它起作用了,但在Javafx中没有。
问题内容: 更新说明: 上面的示例 正常工作 ,因为版本1.0-rc4 解决 了需要不必要的变量的问题。 原始问题: 我完全按照文档中的描述进行操作,但不起作用: main.xml: button.xml: MyActivity.java: 如何获得按钮? 问题答案: 问题在于所包含的布局没有被视为数据绑定布局。要使其成为一体,您需要传递一个变量: button.xml: main.xml: 然后
我有两个不同的方法,在两个不同的类中。我希望他们都能阅读同一行输入,并检查不同的内容。一个查找“给我冲杯咖啡”之类的说明,另一个查找不同的关键字,如“请”和“谢谢”(这些影响程序对我的反应): 然后我在我的主字符串中调用它们,只是为了测试它们: 我的控制台显示如下: 我知道发生了什么,但我想不出其他办法。我也尝试过使用同一个扫描仪,不同的字符串,但仍然不起作用。我怎样才能使这两种方法都能读取我的第