UG NX 10.0用户界面包括标题栏、下拉菜单区、顶部工具条按钮区、底部工具条按钮区、消息区、图形区、部件导航器区及资源工具条区,如图1.3.4所示。图1.3.4 UG NX 10.0中文版用户界面2.下拉菜单区下拉菜单区中包含创建、保存、修改模型和设置UG NX 10.0环境的所有命令。......
2023-10-17
针对基本状态机模式的第4)~5)个问题,需要对模式进行改进。通过搜索的方式来捕捉所有的“单击按钮”事件或其他事件,往往会占用大量的CPU资源。另外,状态机模式并不能捕捉其他一些常见的事件,如鼠标移动、关闭窗口和单击某个菜单项等。为了解决这些问题,程序员可以使用用户界面事件模式。这种交互方式能够处理目前使用到的绝大部分事件,这是LabVIEW中用于人机交互的一种强大而高效的模式,而且事件捕获的方式采用中断实现,在事件没有发生期间,CPU可以处理其他的操作,这就极大地减轻了CPU的负担。
根据来源的不同,事件可以分为用户界面事件、外部I/O事件和其他程序事件。其中,用户界面事件包括鼠标单击、键盘按键等动作;外部I/O事件包括当数据采集完毕或发生错误时硬件定时器或触发器发出信号等情况;其他程序事件可通过编程生成并与程序的不同部分通信。LabVIEW支持用户界面事件和通过编程生成的事件,但不支持外部I/O事件。
用户界面事件模式一般由While循环和事件结构组成,程序开始后进入等待状态,等待某个事件发生后进入相应处理代码,处理结束后回到等待状态。这种程序模式的执行顺序取决于具体发生的事件及事件发生的顺序。
【例5-4】统计循环次数和按下按钮次数
本例采用用户界面事件模式统计循环次数和按下按钮次数,程序前面板如图5-18所示,程序框图分别如图5-19、5-20所示。
图5-18 程序前面板
图5-19 统计“确定”按钮次数的事件分支程序框图
图5-20 统计“停止”按钮次数的事件分支程序框图
【例5-5】画板应用
本例要模拟一个简单的画图板功能。它有4个功能选项:点(point)、线(line)、圆(circle)和椭圆(oval),一次完整的绘画过程是:在画布上单击鼠标开始绘制→按住鼠标的同时在画布上拖动鼠标→在画布上放开鼠标结束绘制。
程序的前面板如图5-21所示,由上下两大部分组成。上面用于选择需要画图的样式,下面是画布,右上方的“×”表示程序结束。
图5-21 画板前面板
由于系统需要响应鼠标在画布上单击、移动和释放事件,因此使用状态机模式是无法解决的,只能通过事件结构。因此本例将使用用户界面事件模式实现上述的画图板功能。
程序框图如图5-22所示,共有4个事件,分别如下:
1)前面板关闭:响应前面板的关闭动作,这是一个过滤性事件,当事件发生时并不真正关闭前面板而只是停止程序的运行。
2)Picture鼠标按下:表示绘画开始。
3)Picture鼠标移动:表示绘画的路径和轨迹。
4)Picture鼠标释放;鼠标离开:表示绘画结束,此时一定要加入鼠标离开事件,因为当鼠标移动到画布的外面时就可以认为是绘画结束了,并不需要一定要求鼠标在画布中释放。
图5-22 画板程序框图
Picture鼠标按下事件如图5-23所示,这个步骤表示绘制开始,每次绘制都必须从这个步骤开始。事件分支左侧的Button参数表示单击鼠标的键位,只有在单击鼠标左键时才被认为是合理的和有效的,当单击其他的键位时并不开始绘制。在有效绘制中,需要将画笔移动到鼠标当前单击的位置。当选择的画图模式是Line和Point时,使用Draw point.vi函数可以在当前的位置上画一个点并且将画笔移动到当前位置。
图5-23 Picture鼠标按下事件程序框图
从图中可以看出系统定义了4个移位寄存器变量以实现不同事件分支的共享,它们的含义如下:
1)表示当前画布中的图像,事实上就是前面板picture中的内容。因为每次画图时都是在当前画布上图像进行叠加,所以需要使用移位寄存器以避免过多的局域变量。
2)表示开始绘制时的鼠标位置,也就是Mouse Down在画布上的相对位置,绘制的起点。
3)表示是否开始了绘制。前面提过每次的绘制过程都是从MouseDown开始的,如果没有这个动作,那么在鼠标在画布上的移动是无效的。
4)表示开始绘制时的图像,这个变量与变量1是不一样的。它表示在MouseDown时画布上的图像,而不是画布中的实时图像。
Picture鼠标按下事件如图5-23所示,该事件是在绘图的过程中,因此移位寄存器3的值必须是true。可以根据不同的画图类型使用相应的函数进行绘图,如画Line时,只需要把当前鼠标的位置作为Line的终点。Picture鼠标移动事件程序框图如图5-24所示。
图5-24 Picture鼠标移动事件程序框图
Picture鼠标释放;鼠标离开事件如图5-25所示,该事件表示绘制的结束,因此只需要把移位寄存器3的值设置为false即可。
图5-25 Picture鼠标释放;鼠标离开事件
本例的实现过程并不复杂,但是涉及了4个移位寄存器变量。一旦变量共享的数据较多时往往需要使用大量的移位寄存器,因此建议使用簇的形式将各个变量有序地组织起来。
有关虚拟仪器与数据采集的文章
UG NX 10.0用户界面包括标题栏、下拉菜单区、顶部工具条按钮区、底部工具条按钮区、消息区、图形区、部件导航器区及资源工具条区,如图1.3.4所示。图1.3.4 UG NX 10.0中文版用户界面2.下拉菜单区下拉菜单区中包含创建、保存、修改模型和设置UG NX 10.0环境的所有命令。......
2023-10-17
图2-40 STAR-CCM+用户界面图2-41 File菜单图2-42 Edit菜单图2-43 Mesh菜单图2-44 Solution菜单图2-45 Tools菜单图2-46 Window菜单STAR-CCM+的用户界面非常友好,操作简单。图2-47 Help菜单通过Solution菜单可以实现计算条件初始化、开始计算、停止计算等功能,并可以清除历史计算记录。通过Tools菜单可以选择、取消和定制软件界面上显示的工具,包括工具栏工具。图2-48 启动TCM模块通过Window菜单可以控制和调整视图区的显示方式。通过Help菜单可以查询帮助文件和检索疑难问题。......
2023-10-17
用户界面的软件部分包括用户与计算机交互时使用的协议、命令、处理程序等。命令符是不同命令的标识,命令符不同,表示要执行的程序不同。用户界面的发展过程可分作三个主要阶段:0、1符号式用户界面。字符显示式用户界面。这种方式的用户界面显示直观、操作简便、掌握快。图4-1是一个图形方式用户界面的示例。目前用户界面的发展,以语音输入输出等多媒体形式、面部和肢体动作识别等多感知渠道、虚拟技术应用等为主要特点。......
2023-11-18
为使用户方便地利用模型得到动力学的分析结果,在ADAMS软件界面中编制一个MC- CB专用模块如图2-50所示。图2-50 二次开发的ADAMS软件用户界面ADAMS/View软件具有很强的用户化设计功能,可以根据需要定制用户界面和设计应用程序,来模拟设计环境和自动完成设计分析过程。界面对象如窗口、菜单与对话框都是AD-AMS/View软件的模型数据,存储在一个名为GUI的数据库中。定制界面对象的语法结构的规则简单、易于修改。图2-51 修改机构连杆质量的对话框......
2023-06-15
下面以Inventor Professional 2018为例介绍Inventor软件及其操作方法。双击图标按钮,等待几秒钟,系统启动并进入Inventor Professional 2018的启动界面,如图1-43所示。“查找范围”文本框显示激活项目文件所指定的当前文件夹,主窗口列出所选位置中所有的文件和子文件夹,预览窗口列出所选Inventor文件的预览图形,如图1-44所示。......
2023-06-28
而在5220m至5560m的距离下,抢劫事件的空间网络K函数值开始减少并逐渐小于蒙特卡洛模拟下限曲线值,说明在5220m及以上的距离上,抢劫事件逐渐表现出空间均匀分布的特征。图6.4抢劫事件时空网络K函数对于盗窃事件,用2017年纽约市发生盗窃事件共计147489起进行分析,图6.5为对应的分析结果,图中各项含义与图6.3相同。......
2023-06-15
图1-21 选择下端面图1-22 绘制端口截面5)单击组中的按钮完成截面的创建,打开选项卡并勾选选项,在拉伸控制板中输入拉伸距离为“120.00”,单击按钮显示如图1-23所示特征。21)按住Ctrl键同时选择端口曲面和对称拉伸曲面,单击选项卡组的按钮,打开控制板将其合为同一面组。......
2023-06-19
AutoCAD 2008提供了分类详细的工具栏,默认状态下,其工作界面只显示了部分工具栏,用户可以根据需要调用其他工具栏。执行某一命令的过程中,AutoCAD会在此行给出提示信息,以提示用户当前应进行的操作。......
2023-09-18
相关推荐