
4.1.4 Flow Switch
Flow Switch也是分支结构活动之一,功能等同于Switch。不同的是,Flow Switch只能在流程图中使用。当项目的流程图中需要根据不同的条件,在多种情况中选择其中一种情况执行时,都可用Flow Switch活动。
下面通过一个案例来学习流程图下的Flow Switch的用法。
【例4.4】系统根据当前日期计算出对应的星期,然后根据今天是星期几,打印不同的日程安排。
1)进入Studio界面,点击Process创建一个流程,命名为4_4_FlowSwitch,如图4-37所示。

图4-37 新建流程
2)进入Main,拖入一个流程图Flow Chart,并在此流程图内拖入一个Flow Switch活动,然后将Flow Switch连接至Start,如图4-38所示。

图4-38 拖入Flow Switch
3)选中Flow Switch并查看其属性,将Expression属性值改为Today.DayOfWeek,如图4-39所示。

图4-39 修改Flow Switch属性值
4)拖入一个Write Line活动,连接到Flow Switch,并将其Text属性改为“"今天周末,大家好好放松下"”,如图4-40所示。

图4-40 设置Default分支活动
5)按第4步一次拖入6个Write Line活动,分别按图4-41所示的内容更改Write Line的Text属性,并更改与之对应的Flow Switch的Case属性值。

图4-41 设置其他分支活动
6)按Ctrl+F6快捷键执行程序,根据执行时的时间,参考结果如图4-42所示。

图4-42 执行结果
通过这个实际案例的练习,大家可以了解到,Flow Switch根据Expression表达式返回结果等于Case的值时,执行对应Case分支,每个Case分支通过连线方式连接流程序列或活动。关联的分支会自动编号,其中第一个是默认情况。可以通过单击相应的箭头线条并更改Case字段的值,或通过改变分支属性IsDefaultCase复选框的值来更改Case编号或分配其他默认Case。如果所有情况都不与表达式匹配,则执行默认情况。
Flow Switch的Expression条件表达式返回的数据类型默认是Int32,可按需更改。