2012-06-06 43 views
0

使用Firefox和其他現代瀏覽器,我們可以選擇一些頁面的文本,然後選擇Drag and Drop我們的選擇。GWT DOM捕捉拖放瀏覽器事件

這拖放的目的地,可以是任何HTML的輸入,甚至是酒吧的地址,搜索領域等

我想知道,如果這種drag event由瀏覽器在處理一個特殊的方式,或者如果有可能捕獲這個事件(一個事件或類似事件)。

更具體地說,我試圖將這個拖放功能添加到某些GWT對象,然後能夠檢索選定的文本。

我正在使用GWT。

EDIT,工作溶液

這是一些相關的代碼:

TextArea text = new TextArea(); 
SimplePanel panel = new SimplePanel(text); 

TextArea text2 = new TextArea(); 
SimplePanel panel2 = new SimplePanel(text2); 

Button button = new Button("button"); 
button.addDragOverHandler(new DragOverHandler() 
{ 
    @Override 
    public void onDragOver(DragOverEvent event) 
    { 
     GWT.log("onDragOver"); 
    }); 

RootPanel.get().add(panel); 
RootPanel.get().add(panel2); 
RootPanel.get().add(button); 

圖片:

Image showing the behavior

使用該按鈕的僅僅是一個例子。

這裏的目標是通過按鈕上的一些處理程序檢索文本I want to drop this text over the button

回答

0

GWT內置支持本地拖放

根據你的描述,你似乎在尋找實現HasDropHandlers窗口小部件,並有超過幾;-)

它也比較容易將其添加到自定義窗口小部件(看看多一點在如何完成內置小部件,如FocusPanelGrid

+0

我試過接口,和其他一些,但我沒有成功。我已經更新了我的問題。也許我想要達到的是超越自然規律。 –

+1

你能顯示你試過的代碼嗎?您可能需要添加一個'DragOverHandler'來將_effect allowed_設置爲'none'而不是'none',並取消該事件,因爲'DropEvent'將被分派到您的'DropHandler'。 –

+0

工作就像一個魅力。 –