2014-07-24 1 views
0

두 번 클릭하고 마우스 오른쪽 버튼을 클릭하여 항목을 삭제할 수있는 항목이있는 목록보기가 있습니다. Mac에서 컨트롤이 작동하지 않는 이유는 무엇입니까? 미리 감사드립니다.JavaFX : Mac (Control + Click)을 마우스 오른쪽 버튼으로 클릭하면 감지되지 않습니다. 모든 수정 사항?

편집 : 내 코드

listview.setOnMouseClicked(new EventHandler<MouseEvent>() 
     { 
      @Override 
      public void handle(MouseEvent event) 
      { 
       if (event.getButton().equals(MouseButton.PRIMARY)) 
       { 
        if (event.getClickCount() == 2) 
        { 
         System.out.println("Double clicked"); 
         System.out.println("clicked on " + listview.getSelectionModel().getSelectedItem()); 
        } 
       } 
       if(event.getButton().equals(MouseButton.SECONDARY)) 
       { 
        System.out.println("Right click"); 
       } 
      } 
     }); 

가 내 트랙 패드는 두 손가락 탭과 보조 버튼으로 설정되어 있습니다.

+1

오른쪽 클릭을 어떻게 확인합니까? 여기에 코드를 게시하십시오. – Mansueli

+1

또한 Mac 구성 방법은 무엇입니까? 마우스 또는 트랙 패드? 시스템 설정 정보 란 무엇입니까? –

+0

감사합니다. 편집을 입력 한 후 문제가 발생했습니다. 두 손가락으로 탭하지 마세요. – avarkhed

답변

2

다른 사람이 찾고 있습니다. 두 손가락으로 클릭하면 MouseButton.SECONDARY 이벤트로 등록되지만, Ctrl + MouseButton.PRIMARY도 확인해야한다고 생각합니다. Ctrl 키를 누른 상태로 마우스 오른쪽 버튼을 클릭하면 에뮬레이트하는 일반적인 방법이기 때문입니다. 따라서 if 문은 다음과 같아야합니다.

if (event.getButton() == MouseButton.SECONDARY || e.isControlDown()) { 

    // DO RIGHT CLICK ACTION 

} 
관련 문제