2017-10-07 81 views
0

我想使用縮放和裁剪在JavaFX的webview使用鍵+縮小和 - 縮放和空間的裁剪和F5的作物圖像保存在我的應用程序im從一個webview加載圖像到另一個 我試過這個如何在JavaFx的webview中使用鍵控監聽器使用縮放和裁剪功能?

final WebView img = new WebView(); 
    final WebEngine Img = img.getEngine(); 
    final DoubleProperty zoomProperty = new SimpleDoubleProperty(200); 
    img.addEventFilter(KeyEvent.KEY_PRESSED, (KeyEvent e) -> { 
     if (e.getCode() == KeyCode.ADD || e.getCode() == KeyCode.EQUALS || e.getCode() == KeyCode.PLUS) { 
      System.out.println("YES"); 
       zoomProperty.set(zoomProperty.get() * 1.1); 
     } 
     else if(e.getCode()== KeyCode.SUBTRACT||e.getCode() == KeyCode.MINUS){ 
      System.out.println("YES"); 
      zoomProperty.set(zoomProperty.get()/1.1); 
     } 
    }); 
    vbox.getChildren().addAll(img); 

從該即時通訊能夠檢測的關鍵,但變焦不working.First我必須要改變箭頭指針到雙箭頭,然後+鍵將縮小(ZoomOut)和 - 鍵zoomin。請幫助,因爲我調試即時通訊能夠檢測到按鍵時按下加減鍵,但我想執行縮放但它不能在webview中工作。

回答

0

我已經解決了我自己的問題,因爲我只是沒有將縮放屬性添加到webview。

img.addEventFilter(KeyEvent.KEY_RELEASED, (KeyEvent e) -> { 
      if (e.getCode() == KeyCode.ADD || e.getCode() == KeyCode.EQUALS || e.getCode() == KeyCode.PLUS) { 
       System.out.println("YES"); 
        img.setZoom(img.getZoom() * 1.1); 
      } 
      else if(e.getCode()== KeyCode.SUBTRACT||e.getCode() == KeyCode.MINUS){ 
       System.out.println("YES"); 
       img.setZoom(img.getZoom()/1.1); 
      } 
     });