wjoin

          MapXTreme

           

          2008年12月29日

          mapxtreme 使用右鍵菜單

          在mapxtreme 中visualMapJ1MouseClicked 事件只能便用左鍵,如果想要右鍵彈出信息的話,非常的不方便,下面是一個臨時的解決辦法:

           private void visualMapJ1MouseClicked(java.awt.event.MouseEvent evt) {                                        
          // TODO 將在此處添加您的處理代碼:
                  if(evt.getButton() == MouseEvent.BUTTON1){
                      JPopupMenu pop =new JPopupMenu();   //右鍵菜單
                      if(!infoToolListener.getInfo().equals("")){       //取回的地理信息不為空
                          pop.add(infoToolListener.getInfo());          //把信息加到菜單上
                          pop.show(evt.getComponent(),evt.getX(),evt.getY());   //在鼠標的地方彈出
                          infoToolListener.clearInfo();                       //清除上次信息
                      }
                  } else if (evt.getButton() == MouseEvent.BUTTON3){  //如果點的是鼠標右鍵,把它模擬成左鍵

                      
                      try {
                          Robot robot = new Robot();  // 建個機器人
                          robot.mousePress(InputEvent.BUTTON1_MASK); //模擬左鍵按下  
                          robot.mouseRelease(InputEvent.BUTTON1_MASK); //左鍵彈起
                      } catch (AWTException ex) {
                          ex.printStackTrace();
                      }
                  }
              }           

          我嘗試了很多辦法,因為mapxtreme 中有很多類都是受保護的,在自己的程序中沒法使用,而且,它耦合度非常的高,我曾經想把其中幾個類反編譯過來使用,結果發現,需要反編譯的類越來越多,以至于最后可能要把整個mapxtreme都反編譯過來,所以我放棄了這種想法,只好用模擬實現,另外,MapMouseEvent 繼承了 MouseEvent 但是沒有提供BUTTON 參數,使得左鍵和中鍵可以讀取到,而右鍵卻不行,所以只好用如此古怪的方法。

          posted @ 2008-12-29 10:35 wjoin 閱讀(379) | 評論 (0)編輯 收藏

          導航

          統計

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          相冊

          收藏夾

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 石阡县| 纳雍县| 修文县| 文昌市| 临颍县| 石首市| 嘉峪关市| 抚宁县| 泽普县| 新平| 那曲县| 荥经县| 长沙县| 芜湖市| 武川县| 民丰县| 临澧县| 客服| 布尔津县| 布拖县| 武川县| 南乐县| 南皮县| 江门市| 西青区| 云安县| 图木舒克市| 沙田区| 湖口县| 珠海市| 班戈县| 元江| 嘉荫县| 隆回县| 临澧县| 阳西县| 郁南县| 丰顺县| 汝阳县| 阳信县| 开鲁县|