shadowwind 发表于 2018-4-25 09:18:21

FlexSim学习案例交流-GUI简易界面设置

本帖最后由 shadowwind 于 2018-4-25 09:23 编辑

为更好的与FlexSim模型交互,让并不了解软件的应用者也能操作你的模型,以及快速修改模型相应参数,我们通过一个小案例来了解GUI的基本制作过程。
1、GUI中树的引用
@:表示寻址到当前节点的根节点。(例如冷连接coldlink,它根节点为主GUI窗口)。
>:表示寻址到节点的属性树。
+:阅读当前节点的文本作为某实体的路径。
/:表示寻址到节点的子树。
..:寻址到当前节点的父树。
?:根据子节点名称在树中搜索子节点。如:node("/?release",model()) 就相当于 node("/Tools/release",model()),它们返回的节点一致。
$$:返回路径时,输入自定义Flexscript代码。如:假设某实体AA标签字符串为source2那么@>objectfocus+/$getlabelstr(Object,”AA”)$相当于@>objectfocus+/ source2。

2、coldlink与hotlink
coldlink:视图文本区连接到实体某个树节点上,只有打开窗口的时候才会获取一次值,只有点击apply才会设置新值。
hotlink:文本区的值随着模型值的变化而变化。

3、制作
(1)点击工具>建模逻辑>GUI 添加GUI后弹出两个窗口,左边为GUI创建器,右边为GUI画布,可以把GUI创建器的相应图标拖拽到GUI画布中。


(2)根据以下小模型来设置相关GUI界面


(3)GUI界面布局,我们将创建可编辑的处理器、操作员、叉车的最大容量,操作员、叉车的最大速度以及暂存区的当前货物容量。首先拖拽button到GUI画布,并可在树结构中更改其名称(“确定”),如需移动按钮,先点击,然后移动到相应位置,并向此button节点下拉入apply属性;


然后添加6个static和edit按钮,及3个button按钮(后面作为模型复位、运行、停止按钮),并改变其名称。



对上面的复位、运行、停止button按钮进行逻辑编写及图标引用。分别向button节点下拉入bitmap属性,用来做图片的引用地址,并在节点后编写图片位置。






并在OnPress(当点击按钮时会触发这个触发器)节点下写入相关执行代码,resetmodel(); go();stop();
对edit按钮添加冷连接或热连接属性,并在其代码区引入正确的节点位置。
以处理器最大容量为例@>objectfocus+/处理器1>variables/maxcontent,@指引到了GUI的首层节点,>进入其节点属性,找到objectfocus节点,+读取objectfocus节点内的文本地址MAIN:/project/model,指向model()节点,/在model节点的子节点下找到处理器1节点,>进入处理器1的属性节点下找到variables节点,/在variables节点的子节点下找到maxcontent节点。
左边的5个都是相似设置。
对于暂存区的当前容量由于要时刻显示动态数值,因此添加hotlink,并写入正确的指向地址。

点击GUI选项选择分配按钮。GUI界面基本设置完成,运行模型使用GUI界面进行交互体验吧。






shadowwind 发表于 2018-4-25 09:24:34

因图片只能通过附件上传,而且论坛上有一天上传5个附件的限制,其他截图明天之后在继续编辑上传
页: [1]
查看完整版本: FlexSim学习案例交流-GUI简易界面设置