JTree는 SelectionListener 및 ExpansionListener를 제공합니다. 그러나 노드를 확장 할 때 (+/- 아이콘 클릭) 볼 수있는 한 선택 이벤트도 발생합니다. 1) 확장 아이콘을 클릭하면 확장 +1 이벤트에 대한 선택 항목 2) 노드 자체를 클릭하면 선택 항목 1 개만 표시됩니다.JTree 노드가 확장되었지만 선택되지 않았 음을 알 수있는 방법
사용자가 노드를 확장 할 때 선택 이벤트가 발생합니까?
또는 ... 어떻게 확장을 감지 할 수 있습니까 (선택 없음)? 노드가 실제로 선택되고 확장시에만 아무 작업도 수행하지 않는 경우에만 시간이 많이 걸리는 작업을 실행하고 싶습니다 (GUI에서 노드를 확장 한 경우는 제외). 아이디어가 있습니까? 감사합니다.
마지막 단락 자체가 모순으로 들립니다. _expension 만 - 실제로 선택하면 시간이 오래 걸리는 작업 _ 명확히하십시오. – kleopatra
내가 찾는 것은 사용자가 노드를 확장 할 때 (내가 트리에서 노드를 확장 할 때) 아무 것도 할 수 없도록하고, 사용자가 노드를 선택할 때만 GUI의 다른 부분을 업데이트 할 수 있도록하는 방법입니다. 나무. – DaveG
내 앱에 여러 개의 트리가 포함되어 있습니다. 트리에서 노드를 클릭하면 앱이 DB에서 데이터를 검색하고, 물건을 계산하고, 그래픽을 생성하는 등의 작업을 수행합니다. 심지어 폴더는 이와 같은 정보와 관련이 있습니다. 문제는 다음과 같습니다. 데이터를 가져와야하는 다른 노드에 액세스하기 위해 10 개의 폴더 노드를 확장해야하는 경우 먼저 모든 10 개의 상위 폴더에서 데이터를 가져 오지 않으려합니다. – DaveG