2014-02-11 51 views
1

我正在使用mxGraph在我的应用程序中创建一些工作流程。默认情况下,放大因子是1​​.2。我想限制一定水平之后的缩放。这怎么能实现?我们可以限制mxGraph中的缩放级别吗?

这里去我JSNI代码:

private native void zoomInGraph(JavaScriptObject graph) /*-{ 
     var scale = $wnd.mxGraphView.prototype.getScale(); 
     if (scale != null && scale < 5){ 
      graph.zoomIn(); 
    } 
     }-*/; 

每次大规模返回为1。我在刻度值会改变变焦后承担的价值。请建议我如何实现它。

+0

Don.t知道关于JSNI的任何信息,但它看起来像问题是你在mxGraphView原型而不是实际的实例上调用'getScale'。它应该是'graph.view.getScale()'而不是。 –

回答

0

我想出了Java中这个问题的解决方案。

@Override 
public void zoomIn() 
{ 
    mxGraphView view = graph.getView(); 
    double scale = view.getScale(); 
    if (scale > ZOOM_IN_THRESHOLD) 
    { 
     // Don't zoom in past a certain point. 
     return; 
    } 
    else 
    { 
     zoom(zoomFactor); 
    } 
} 
相关问题