3

我正忙于自学 FXML。我是按照这个例子来做的。

这是一个简单的文本编辑器。但是,在本教程中,一切都是 Java 代码。

我自己正在使用 FXML 来分​​离逻辑视图。

我目前面临以下挑战:

我在我的 FXML 中定义了一个 TextArea,如下所示:

<TextArea id="taTextArea" fx:id="taContent" wrapText="true" />

通常你使用 onAction="#actionName" 添加动作监听器

我想知道的是,我怎样才能对文本更改做类似的事情。所以我可以检测是否需要保存,修改状态栏标签等。

我想避免必须将 TextArea 附加到控制器的 init 方法中的更改侦听器(实现 Initializable)。

另外..当我完成这个应用程序时,我会写一篇关于它的博客。由于缺少 FXML 文档,我认为这对其他新手会有帮助。所以我希望我的代码尽可能干净。

编辑 1

还没有进展。我需要知道 FXML 中是否有诸如代码完成之类的东西,所以我可以检查我可以在 FXMl 中使用哪些类型的属性。应该有一个 textLength 属性。在提供的链接中,作者使用 lengthProperty.addListener。我需要一个 FXML 等价物

4

1 回答 1

2

您可以使用 onKeyPressed 属性:

onKeyPressed="#textChanged"

它调用指定控制器中的 textChanged 方法。

对于第二个问题:目前 FXML 的最佳参考是 JavaFX 的 javadoc,因为那里列出了所有属性。

于 2012-07-30T10:25:30.323 回答