2012-12-23 53 views
3

所以我有这个anchorpane,我希望为辅助鼠标键添加鼠标排列器我尝试了以下但我不断收到错误任何人都知道问题是什么?为辅助鼠标按钮添加鼠标事件Javafx

mainDisplayPanel.addEventHandler(MouseButton.SECONDARY, new EventHandler<MouseButton>() { 

        @Override 
        public void handle(MouseButton event) { 
         System.out.Println("Works"); 

        } 
       }); 

备案我也试过这样:

  mainDisplayPanel.addEventHandler(MouseButton.SECONDARY, new EventHandler<MouseEvent>() { 

       @Override 
       public void handle(MouseEvent event) { 
        System.out.println("WOrks"); 
       } 
      }); 

堆栈跟踪:

约束不匹配:类型节点的通用方法的addEventHandler(事件类型, 事件处理程序)不适用于参数 (MouseButton,new EventHandler(){})。该 推断类型MouseButton &事件不是针对 界参数

而其他有效的替代品:

约束不匹配:类型MouseButton不是的有界参数的有效替代品类型EventHandler

+0

'的System.out.println( “作品”);'资本P + – Doorknob

+0

请提供堆栈跟踪。 – Doorknob

+0

我会坚持:) –

回答

5

根据MouseButton.SECONDARY没有EventType。您需要检查MouseEvent本身:

mainDisplayPanel.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() { 

    @Override 
    public void handle(MouseEvent event) { 
     if (event.getButton() == MouseButton.SECONDARY) { 
      System.out.println("Works"); 
     } 
    } 
});