我有JPanel
包含JCheckBox
字段的列表,我希望它们按特定顺序显示。我被告知可以创建一个视图模型来对这些复选框进行排序。我对Swing很新,不知道如何继续前进。我无法在互联网上找到任何来源。有人可以帮助我找到实现上述方法的方法。提前谢谢。
答案 0 :(得分:1)
您似乎想为控制视图中显示的数据创建模型。一种方法是为模型创建合适的TableModel
,并为视图使用JTable
。您的TableCellRenderer
可以调节显示器的颜色和启用状态;您的Comparable
实现将定义排序顺序。
通过转发class DataModel extends AbstractTableModel
来竞争example,List<Value>
以管理Value implements Comparable<Value>
和Double
。您的实现将为Enabled
添加一个属性,并将其包含在您所需方法的实现中。概括地说,
private static class Value implements Comparable<Value> {
private Boolean selected;
private Boolean enabled;
private Double value;
public Value(Boolean selected, Boolean enabled, Double value) {
this.selected = selected;
this.enabled = enabled;
this.value = value;
}
@Override
public int compareTo(Value v) {…}
@Override
public boolean equals(Object v) {…}
@Override
public int hashCode() {…}
}
此相关example使用MyObjectManager
的实例来管理单选按钮之间的互斥。