2014-11-14 68 views
1

我正在使用java WWsdk。 我期待SelectListener在用戶單擊地圖時(即不是圖標或地標等)響應用戶在地圖上的點擊。美國國家航空航天局世界風:SelectListener不會觸發地圖點擊

當我在我的對象單擊它工作正常的我,但是當我點擊「空白」它不會觸發。即像水/土地。

爲SelectListener該文檔說

如果沒有對象是光標下但光標位於的地形,選擇事件將>識別地形作爲拾取對象和將包括相應的地理>位置

這種說法聽起來好像我應該得到每當我不要點擊對象的事件,但我不明白這一點。

我應該添加一些其他類型的圖層來獲取點擊地圖觸發選擇事件?

我用這裏面的工作對我來說,我需要執行獲得點擊就是行動上的對象:

this.worldWindowGLCanvas1.addSelectListener(new SelectListener() 
    { 
     public void selected(SelectEvent event) 
     { 
      //Never goes here for clicks on map, just clicks 
      //on objects i have already created.  
      doStuff(); 
     } 
    } 

回答

1

添加MouseListener使用addMouseListener()

this.worldWindowGLCanvas1.addMouseListener(new MouseListener() { 
    @Override 
    public void mouseClicked(MouseEvent e) { 
     doStuff(); 
    } 
    ... 
} 

您可能還需要添加如果您想要阻止World Wind通過點擊進行其他操作,請傾聽AWTInputHandler而不是WorldWindowGLCanvas。更多詳情in this question

相關問題