Java.Раскрыть ветвь дерева.

Alex1010

Есть JTree. Как сделать так, чтобы раскрыть ветвь дерева по двойному щелчку мышкой, но не по самому узлу, а по крестику напротив узла.
То есть нужно как-то предотвратить раскрытие ветви, кликая на крестик один раз.
ps.коряво как-то получилось, но может кто подскажет

gopnik1994

а там эвента на OnExpand нету?

Alex1010

была мысль использовать TreeWillExpandListener - он отлавливает событие до того, как раскрыть ветку, и потом уже раскрывает или нет.
Но оказалось проблемой узнать сколько кликов было сделано, так как ивент
TreeExpansionEvent не содержит такой информации

gopnik1994

тогда лови OnClick/OnMouseDown/OnMouseDoubleClick и т.д. и проктологически выставляй внутренние флаги

Alex1010

так вот mouseClick он ловит только после того, как отловит willExpand.
в этом и проблема

gopnik1994

вот жопа!

kokoc88

А что нельзя отменить willExpand и потом самостоятельно раскрыть?

Alex1010

надо попробовать

Alex1010

вот блин, как только пытаешься раскрыть ветку самостоятельно, это опять порождает событие wiilExpand, которое отменяет все начинания.

kokoc88

Ну так флаг введи: когда сам раскрываешь, не отменяй, когда не сам - отменяй.
Оставить комментарий
Имя или ник:
Комментарий: