我在项目中使用ControlFX library来使用PropertySheet动态生成表单。
控制类:

    public class Controllor implements Initializable
   {
    @FXML
    private PropertySheet sheet;
    @Override
    public void initialize(URL location, ResourceBundle resources)
    {
    sheet = new PropertySheet(BeanPropertyUtils.getProperties(new BeanObj(someProperties)));
    sheet.setMode(PropertySheet.Mode.NAME);
    }
    }


我的fxml文件包含AnchorPane和PropertySheet(仅用于测试)。
该程序没有错误运行,但是显示了一个空的propertySheet控件!
所以,我这样做正确吗?请任何帮助将不胜感激!
编辑:我设法通过在MainClass的Start()方法中实现相同的代码来使应用程序运行
我还是很困惑!我不知道...
编辑2:F5解决我的一切

最佳答案

您正在创建sheet的第二个实例,但是没有添加到场景图中。

使用@FXML批注,FXMLLoader创建了一个添加的注释,但没有内容或元素。

这应该工作:

@FXML
private PropertySheet sheet;

public void initialize() {
    sheet.getItems().setAll(BeanPropertyUtils.getProperties(new BeanObj()));
    sheet.setMode(PropertySheet.Mode.NAME);
}

关于java - ControlsFX属性表不显示任何内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36518975/

10-08 22:30