【初心者】 Java質問・相談スレ30 【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0087デフォルトの名無しさん
NGNGあくまで、応急処置。class PersonNodeの該当メソッドを以下のように変える。
public boolean isLeaf() {
PersonalInfo info = null;
try {
info = (PersonalInfo) getUserObject();
return info.isMale();
}
catch (ClassCastException e) {
return super.isLeaf();
}
}
public void add(DefaultMutableTreeNode child) {
super.add(child);
PersonalInfo childPI = (PersonalInfo) ((PersonNode) child).getUserObject();
PersonalInfo oldParent = childPI.getParent();
PersonalInfo newParent = null;
try {
newParent = (PersonalInfo) getUserObject();
}
catch (ClassCastException e) {
newParent = new PersonalInfo(getUserObject().toString(), super.isLeaf());
}
newParent.add(childPI);
}
ちなみに、子を持たないノードは『葉』に変わるのでその辺は自分でやれ。
■ このスレッドは過去ログ倉庫に格納されています