java 如何创建一个CheckboxGroup,将每个复选框链接到对象的布尔值?

bogh5gae  于 2023-03-11  发布在  Java
关注(0)|答案(1)|浏览(102)

我有一个对象,它包含一堆布尔字段,如下所示:

public class ContainsBooleans {
    private boolean aBoolean = true;
    private boolean anotherBoolean = false;
...
}

我尝试创建一个CheckboxGroup,它包含对象中每个布尔字段的复选框,并绑定到相应的字段。
我试过为每个字段单独创建一个复选框,但我不知道如何将它们添加到CheckboxGroup(也不知道CheckboxGroup应该是哪种类型),就好像我有CheckboxGroup一样,我显然不能将复选框添加到CheckboxGroup,而且我不知道如何将每个复选框Map到布尔值。
基本上,我的POJO类有许多可以启用/禁用的布尔值,我希望接口有一个复选框来表示每个布尔值。
我没有更多的代码要展示,似乎没有任何关于CheckboxGroup的文档,所以我甚至不确定从哪里开始

vlurs2pr

vlurs2pr1#

我认为没有一行快捷方式。之所以不“容易”,是因为这看起来像是你正在推动一些东西超越边界,那应该最好留在另一边。如果我不得不猜测,我会说你正在处理一个数据库行,你想直接在GUI中编辑,但表中的数据建模不匹配。实际的域或者甚至是它的GUI表示是什么。
因此,处理这个问题的正确方法是使用一个GUI模型,该模型至少隐藏了实现细节,这是一个令您头痛的问题,即从GUI中隐藏数据库实现细节。
如果出于某种原因必须使用该类:考虑为一个Set<SomeEnum>添加一个合成的getter/setter,它代表了你想在GUI中表示的一组布尔值。然后为集合中的每个集合布尔值放置一个枚举,反之亦然。然后在GUI中使用CheckboxGroup<Set<SomeEnum>>
如果连这都不可能,那么你可以在绑定表单的时候把这个getter/setter放进去(例如,代替通过属性名绑定);基本上与上述相同,但不改变原始类。

相关问题