为了使屏幕阅读器可以访问 GUI,复选框应属于按钮组。但是,如果要允许同时选中多个复选框,则不能将它们添加到 javax.swing.ButtonGroup,因为“打开”其中一个按钮会关闭组中的所有其他按钮。
是否有其他类型的“按钮组”您应该添加复选框以使屏幕阅读器可以访问 GUI?
为了使屏幕阅读器可以访问 GUI,复选框应属于按钮组。但是,如果要允许同时选中多个复选框,则不能将它们添加到 javax.swing.ButtonGroup,因为“打开”其中一个按钮会关闭组中的所有其他按钮。
是否有其他类型的“按钮组”您应该添加复选框以使屏幕阅读器可以访问 GUI?
制作一种新的ButtonGroup
允许排除:
public class ExclusiveButtonGroup extends ButtonGroup {
private ArrayList<ButtonModel> exclusives;
public ExclusiveButtonGroup(AbstractButton... exclusives){
for(AbstractButton b : exclusives)
this.exclusives.add(b.getModel);
}
@Override
public void setSelected(ButtonModel model, boolean select) {
if(!exclusives.contains(model))
super.setSelected(model, select);
}