2013-11-04 71 views
0

我是gwt新手,在我的應用程序中,我必須顯示一個從服務器獲得的svg文件。 問題是我能夠從服務器端獲取svg文件並使用HTMLPanel進行顯示。 但事件並沒有被解僱。像鼠標一樣,拖放事件等等,這些都是他們沒有被解僱的svg文件。 請讓我知道我該如何解決這個問題。下面是我的代碼 image = new HTMLPanel(response.getText()); rootPanel.add(image);在gwt中顯示svg文件

由於提前, 普拉迪普

+0

1)你能否顯示你的代碼,在其中嘗試觸發並處理鼠標事件? 2)如果您將整個svg結構添加爲文本,則不會將這些元素視爲任何GWT對象,只是純html,因此不附加任何事件處理程序。 – fascynacja

+0

感謝您的回覆,我從下面的鏈接中讀到的是我們不需要在gwt中顯式地將任何鼠標寫入事件.svg文件中的事件將被觸發。所以我沒有寫任何事件處理程序。是的,你是正確的整個svg文件被視爲一些文本。所以我該如何解決? http://stackoverflow.com/questions/12858907/how-to-load-a-svg-in-gwt-widget-from-an-url – user2784984

回答

0

我猜你想顯示SVG XML或數據URI爲HTML?如果是這樣,該文本將不會生成任何事件,只有HTMLPanel會。下面的代碼應該讓你一個處理程序添加到HTMLPanel

image.addDomHandler(new MouseOverHandler() { 

    @Override 
    public void onMouseOver(MouseOverEvent event) { 
     System.out.println("Mouse over"); 
    } 
}, MouseOverEvent.getType()); 

附加其他事件處理方式相同。