Validation 使用Griffon和JavaFX将文本字段绑定到数字

Validation 使用Griffon和JavaFX将文本字段绑定到数字,validation,javafx,griffon,Validation,Javafx,Griffon,我正在使用Griffon1.2.0和JavaFX,我想将一个文本字段绑定到一个数字。我以为只要将model属性定义为Float就可以了,但它似乎不喜欢这样,即使我定义了一个转换器。我研究了Validator插件,但这似乎只适用于Swing(而不是JavaFX)——这是一个遗憾,因为这个演示让它看起来非常好:(第67页显示了我想要的功能) 同时,我刚刚在视图的noparent块中添加了一个属性更改侦听器,如下所示: amount2.textProperty().addListener({obser

我正在使用Griffon1.2.0和JavaFX,我想将一个文本字段绑定到一个数字。我以为只要将model属性定义为Float就可以了,但它似乎不喜欢这样,即使我定义了一个转换器。我研究了Validator插件,但这似乎只适用于Swing(而不是JavaFX)——这是一个遗憾,因为这个演示让它看起来非常好:(第67页显示了我想要的功能)

同时,我刚刚在视图的noparent块中添加了一个属性更改侦听器,如下所示:


amount2.textProperty().addListener({observeValue我认为GroovyFX的@FXBindable and bind()节点已经提供了这个功能,也就是说

 class SampleModel {
     @FxBindable float number
 }

 // View
 textField(text:bind(target: model, 'number', converter: { v -> /* insert converter code here */))

考虑到GroovyFX的bind()是SwingBuilder的bind()的副本。

我尝试了这个//model@FXBindable float test//view textField(text:bind(target:model,'test'),converter:model.convertFloat),但它在2013-02-25 11:33:46614[AWT AppKit]中剧烈死亡错误org.codehaus.griffon.runtime.builder.UberBuilder-生成moneytracker时出错。MoneytrackerView@276acd3bgroovy.lang.MissingPropertyException:没有这样的属性:类的目标:groovyx.javafx.binding.BindingHolder###Java运行时环境检测到一个致命错误:##SIGSEGV(0xb)在pc=0x000000010d9a5425、pid=6373、tid=1799时,JRE版本:7.0_07-b10
 class SampleModel {
     @FxBindable float number
 }

 // View
 textField(text:bind(target: model, 'number', converter: { v -> /* insert converter code here */))