2011-09-05 7 views

답변

8

JButton에 대한 참조가있는 경우 getParent()으로 전화하십시오. 부모가 null 인 경우 버튼이 패널 (또는 컨테이너)에 없습니다.

@kleopatra를 제안하고 인스턴스에서 getComponents()을 호출하고 배열을 반복하여 instanceof JButton 인 것을 찾으십시오.

7

확인이 필요합니까? 그렇지 않은 경우 확인하지 않고 JButton을 삭제하면됩니다. JPanel에 포함되어 있지 않으면 아무 것도 발생하지 않습니다.

+0

질문은 'JPanel에 JButton이 있는지 어떻게 확인할 수 있습니까?'입니다. 그 질문을 검색하는 사람들은이 답변을 참조 할 것입니다. 이 대답은 묻는 사람의 특별한 목적을위한 좋은 충고이지만 일반적인 질문에 대한 적절한 대답은 아닙니다. – Maarten

+0

@Maarten : 당신 말이 맞아요. 나는 제목 설명이 아니라 제목에 답했다. 사람들은 대개 제목에 관심이있다. 나는 생각한다 [Andrew 's Answer] (http://stackoverflow.com/a/7318993/887149) 노호하기가 좋다. – Mohayemin

0

버튼에 대한 참조가있는 경우 : 패널의 자녀들 통해 반복 뭐가 잘못

List<Component> componentList = Arrays.asList(panel.getComponents()); 
if (!componentList.contains(button)) { 
    panel.add(button); 
} 
관련 문제