我想创建一个自定义微调器,因此我创建了一个自定义值工厂。我现在所做的就是从SpinnerValueFactory类中复制DoubleSpinnerValueFactory,重命名它并使其成为非静态,然后添加了wrapValue函数。但是,当我尝试将它放在我的FXML而不是双精度时,我收到一个错误:sample.myValueFactory不是有效的属性。
有人能告诉我为什么会这样吗?感谢。
fxml中的微调器:
<Spinner fx:id="spinnerRowCount" prefWidth="400.0" editable="true">
<valueFactory>
<sample.myValueFactory fx:id="spnRowCountValueFactory">
<min>0</min>
<max>100000</max>
<amountToStepBy>1</amountToStepBy>
<wrapAround>true</wrapAround>
</sample.myValueFactory>
</valueFactory>
</Spinner>
所有内容都在样本包中。
答案 0 :(得分:0)
如果标签以大写字母开头(并且导入了类),则元素的标签被视为实例声明
,而
标记名称以小写字母开头的元素表示对象属性。
因此,遵循类中常用的Java命名约定非常重要;即以大写字母开头。此外,您应该导入类:
<?import sample.MyValueFactory?>
然后
<valueFactory>
<MyValueFactory fx:id="spnRowCountValueFactory">
等