위젯을 패널 외부에 놓을 때 패널에서 위젯을 삭제하려고합니다. 나는이 자습서와 예제를 찾아 보았습니다. http://code.google.com/p/gwt-dnd/wiki/GettingStarted 그러나 드롭 컨트롤러를 설정하여 패널 외부로 떨어 뜨리는 방법을 알아낼 수 없습니다.드래그 앤 드롭 gwt
힌트를 주시겠습니까?
위젯을 패널 외부에 놓을 때 패널에서 위젯을 삭제하려고합니다. 나는이 자습서와 예제를 찾아 보았습니다. http://code.google.com/p/gwt-dnd/wiki/GettingStarted 그러나 드롭 컨트롤러를 설정하여 패널 외부로 떨어 뜨리는 방법을 알아낼 수 없습니다.드래그 앤 드롭 gwt
힌트를 주시겠습니까?
DropController (AbstractDropController)에서 생성자에서 요소를 삭제할 수있는 요소를 정의해야합니다. 구체적으로 도움이되는 몇 가지 코드 스 니펫이 있습니까?
추신 : 내가 언급 한이 라이브러리를 사용하여 D & D를 빌드했는데, 제 의견으로는 버그가 많고 시작하기가 쉽지 않습니다. 하지만 더 나은 네이티브 D & GWT 용 D lib를 찾지 못했습니다. jquery D & D를 래핑하려고했습니다. 매우 빠르고 부드럽지만 포장하기가 어렵습니다.
그게 내가 한 짓이다. AbstractDragController를 상속 한 DropController를 만들었습니다. 생성자에서 정의 할 요소는 무엇입니까? 위젯을 패널 외부 어디에나 놓고 싶습니다. – vladM
당신이 PickupDragController
PickupDragController controller =
new PickupDragController(pickupContainer, false);
를 인스턴스화하고 픽업 컨테이너 외부에서 위젯을 떨어 뜨린 경우 다음 VetoDragException
가 자동으로합니다 (생성자에서 해당 false
의 결과로) 슬로우됩니다. JavaDoc 또는 심지어 BoundaryDropController
의 코드를 참조하십시오.
그런 다음 예외가 발생한 경우 DragHandler
및 onDragEnd
검사에 등록 할 수 있습니다. 그렇다면 위젯을 제거하십시오. 다음과 같음 :
class MyHandler implements DragHandler {
// onPreviewDragStart, onDragStart, onPreviewDragEnd omitted.
public void onDragEnd(DragEndEvent event) {
if (event.getContext().vetoException != null) {
// Not sure it works, but you get the idea.
event.getContext().draggable.removeFromParent();
}
}
}
controller.addDragHandler(new MyHandler());
감사합니다. 작동합니다. :) – vladM
고맙습니다. 나를 위해 일했다. 좋은 연구. –
@Andrea Boscolo : 마지막 요소를 끌 수 없습니다. 내가 디버깅 할 때 부모가 null이라는 것을 알았습니다. –
시도한 것과 중단 된 곳에 대한 세부 정보를 공유 할 수 있습니까? –