MSAGL:GraphViewerGdi:如何以编程方式重置缩放(或以编程方式按主页按钮重置它)?
MSAGL: GraphViewerGdi: How to programmatically reset the zoom (or programmatically press the Home button to reset it)?
我想右键单击一个节点以放大该节点,然后再次右键单击以完全重置缩放和平移到其开始状态。此外,我将来可能希望隐藏查看器的内置工具栏并使用热键执行缩小。所以“只需按下现有的主页按钮”不是我用例的解决方案。
我已经使用 ShowBBox()
进行了放大。
我找不到完全像主页按钮那样以编程方式缩小的方法。
- 查看器没有
ResetZoom()
、HomeButtonPressed()
或我能找到的任何此类方法。
- 将
.ZoomF
设置回 1.0 是不够的,因为它不会同时使平移居中(并且 Pan(0,0)
也不会使平移居中。)
gvMain.ShowBBox(gvMain.Graph.BoundingBox)
不起作用(缩放变化很小,但没有达到类似于主页按钮的完全重置状态。)
home button is doing 将 Transform
设置为空。所以你也可以做同样的事情来重置转换:
//Press home button:
gViewer1.Transform = null;
gViewer1.Invalidate();
万一有人有兴趣以编程方式调用其他按钮的操作,这里是方法:
- ZoomInPressed()
- ZoomOutPressed()
- BackwardButtonPressed()
- ForwardButtonPressed()
- SaveButtonPressed()
- PrintButtonPressed()
- OpenButtonPressed()
- UndoButtonPressed()
- RedoButtonPressed()
- LayoutSettingsIsClicked()
我想右键单击一个节点以放大该节点,然后再次右键单击以完全重置缩放和平移到其开始状态。此外,我将来可能希望隐藏查看器的内置工具栏并使用热键执行缩小。所以“只需按下现有的主页按钮”不是我用例的解决方案。
我已经使用 ShowBBox()
进行了放大。
我找不到完全像主页按钮那样以编程方式缩小的方法。
- 查看器没有
ResetZoom()
、HomeButtonPressed()
或我能找到的任何此类方法。 - 将
.ZoomF
设置回 1.0 是不够的,因为它不会同时使平移居中(并且Pan(0,0)
也不会使平移居中。) gvMain.ShowBBox(gvMain.Graph.BoundingBox)
不起作用(缩放变化很小,但没有达到类似于主页按钮的完全重置状态。)
home button is doing 将 Transform
设置为空。所以你也可以做同样的事情来重置转换:
//Press home button:
gViewer1.Transform = null;
gViewer1.Invalidate();
万一有人有兴趣以编程方式调用其他按钮的操作,这里是方法:
- ZoomInPressed()
- ZoomOutPressed()
- BackwardButtonPressed()
- ForwardButtonPressed()
- SaveButtonPressed()
- PrintButtonPressed()
- OpenButtonPressed()
- UndoButtonPressed()
- RedoButtonPressed()
- LayoutSettingsIsClicked()