WEB开发网
开发学院软件开发C语言 C#进行Visio二次开发之组合形状操作 阅读

C#进行Visio二次开发之组合形状操作

 2010-09-30 22:45:23 来源:WEB开发网   
核心提示: 至此,完成万里长征第一步,C#进行Visio二次开发之组合形状操作(3),也证实分解后的图形,可以通过移动位置的方式实现,建立一个操作函数,来实现选择模式的修改,虽然定位形状我们不能靠 ActiveWindow.Page.Shapes.ItemFromID(60)来定位,但是我们可以通过埋在形状

至此,完成万里长征第一步,也证实分解后的图形,可以通过移动位置的方式实现,虽然定位形状我们不能靠 ActiveWindow.Page.Shapes.ItemFromID(60)来定位,但是我们可以通过埋在形状中的设备类型参数来实现形状的定位的(这里我在设计模具的时候,把两个形状的的设备类型属性分别设置为“阀A"和”阀B“)。 

进一步分析整体组合形状的ShapeSheet参数发现,里面有一个很重要的参数,如下图所示:

C#进行Visio二次开发之组合形状操作

查看原图(大图) 

F1查看其帮助说明,如下所示

C#进行Visio二次开发之组合形状操作 

因此可以看到,可以通过该属性的设置,来实现组合形状的分离操作,在图纸上实际操作一下,把0修改为1或者2,果然可以实现子形状的选择操作了。 

建立一个操作函数,来实现选择模式的修改,如下所示:

        /// <summary>
        /// 设置形状的选择属性
        /// </summary>
        /// <param name="targetShape">指定的形状</param>
        /// <param name="selectMode">
        /// 0 仅选择组合形状。
        /// 1 首先选择组合形状
        /// 2 首先选择组合的组成部分 
        /// </param>
        [CLSCompliant(false)]
        public static void SetGroupSelectMode(Visio.Shape targetShape, int selectMode)
        {
            targetShape.get_CellsSRC((short)VisSectionIndices.visSectionObject, (short)VisRowIndices.visRowGroup,
                   (short)VisCellIndices.visGroupSelectMode).FormulaU = selectMode.ToString();
        }

上一页  1 2 3 4  下一页

Tags:进行 Visio 二次

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接