LabVIEW程序设计模式(三)—用户界面事件模式
从图中可以看出系统定义了4个移位寄存器变量以实现不同事件分支的共享,它们的含义如下:
- 表示当前画布中的图像,事实上就是前面板picture中的内容。因为每次画图时都是在当前画布上图像进行叠加,所以需要使用移位寄存器以避免过多地局域变量。
- 表示开始绘制时的鼠标位置,也就是Mouse Down在画布上的相对位置,绘制的起点。
- 表示是否开始了绘制。前面提过每次的绘制过程都是从Mouse Down开始的,如果没有这个动作,那么在鼠标在画布上的移动是无效的。
- 表示开始绘制时的图像,这个变量与(1)是不一样的。它表示在Mouse Down时画布上的图像,而不是画布中的实时图像。

图 17 Picture
Picture

图 18 Picture
Picture

图 19 Picture
本例的实现过程并不复杂,但是涉及到了4个移位寄存器变量。一旦变量共享的数据较多时往往需要使用大量的移位寄存器,因为建议使用cluster的形式将各个变量有序地组织起来。
评论