第1章 简单数学工具(Ⅵ) 1
1.1温度转换工具 1
1.1.1定制函数选板 2
1.1.2创建温度转换工具 3
1.1.3使用库管理温度转换Ⅵ 14
1.1.4定制温度转换工具至LabVIEW函数选板 16
1.1.5利用单位进行自动温度转换 17
1.1.6时间差工具 20
1.2常用数列工具 21
1.2.1使用帮助快速定位结构和函数 21
1.2.2自然数平方和 22
1.2.3自然数倒数和 23
1.2.4斐波那契数列 24
1.2.5完全平方数 25
1.2.6阶乘构成的数列之和 26
1.2.7利用数列计算PI值 27
1.3角度与弧度的相互转换(读者练习) 27
1.3.1角度转换为弧度 27
1.3.2弧度转换为角度 28
1.3.3创建多态弧度角度转换Ⅵ,并添加到函数选板 28
第2章 基本数学工具 29
2.1牛顿迭代法 29
2.1.1利用牛顿迭代法求平方根 29
2.1.2利用牛顿迭代法求立方根 30
2.1.3利用牛顿迭代法求N次方根 30
2.2铂电阻、热敏电阻、热电偶线性化 31
2.2.1铂电阻PT100 32
2.2.2 PT100温度阻值转换器 35
2.2.3热敏电阻(读者练习) 36
2.2.4热电偶 37
2.3随机数发生器 38
2.3.1 0~1随机数发生器 38
2.3.2指定范围的随机数 41
2.3.3 1~N区间的自然数随机排列 42
2.4常用几何工具 43
2.4.1几何点工具 43
2.4.2直线工具 45
2.4.3三角形基本公式 49
2.4.4三角形工具Ⅵ 51
第3章 常用逻辑电路工具 54
3.1值改变、边沿检测、寄存器 54
3.1.1未初始化的移位寄存器(SR)与未初始化的反馈节点 54
3.1.2值改变 54
3.1.3边沿检测 56
3.1.4寄存器 57
3.2触发器 59
3.2.1 RS触发器与SR触发器 59
3.2.2 JK触发器 60
3.2.3同步D触发器 61
3.2.4 T触发器 61
3.3比较器 62
3.3.1数据交换器 62
3.3.2基本比较器 63
3.3.3峰值比较器 64
3.3.4奇偶比较器 64
3.3.5三段比较器 65
3.3.6四段比较器 65
3.3.7多段比较器 65
3.3.8通断器 66
3.3.9过零比较器 67
3.3.10比较选择器 68
3.3.11限幅器 69
第4章 常用逻辑编程工具 70
4.1位操作工具Ⅵ 70
4.1.1位屏蔽符 70
4.1.2置位 70
4.1.3复位操作 71
4.1.4位翻转操作 71
4.1.5位状态 72
4.1.6清零 72
4.1.7布尔数组与位操作 72
4.2运算器 72
4.2.1加法运算器 72
4.2.2减法运算器 73
4.2.3乘法运算器 73
4.2.4除法运算器(分频器) 74
4.3计数器 74
4.3.1逐点分析库中的计数器 74
4.3.2加计数器 75
4.3.3减计数器 75
4.3.4加减计数器 76
4.3.5自动复位加计数器 77
4.3.6自动载入减计数器 77
4.3.7 n分频器 77
4.3.8计数器级联 77
4.4定时器 78
4.4.1内置的时间计数器函数 78
4.4.2高精度相对于秒的时间计数器 78
4.4.3时间计数器工具Ⅵ 79
4.4.4周期触发定时器 79
4.4.5延迟接通定时器 80
4.4.6延迟断开定时器 83
4.4.7已用时间定时器 84
4.4.8脉冲定时器 84
4.4.9记忆延迟接通定时器 85
4.5整点定时闹钟 86
4.5.1整点(时分秒)闹钟 86
4.5.2指定时刻(时分秒)闹钟 87
4.5.3指定多时刻(时分秒)闹钟 87
4.5.4等间隔(时分秒)闹钟 88
4.5.5任意时刻闹钟 88
4.5.6已用时间定时器(时钟) 89
4.6开关去抖动 89
4.6.1延迟读去抖动 89
4.6.2过滤去抖动 90
4.7门电路测试器 91
4.7.1自动生成测试数据 91
4.7.2创建模拟器 92
4.7.3自动生成真值表 93
4.7.4三输入门电路测试Ⅵ 93
第5章 数值工具与数组工具 94
5.1数值与位数工具 94
5.1.1数值至位数工具 94
5.1.2位至数值工具 95
5.1.3数值位数工具 95
5.2数值圆整工具与浮点数拆分工具 95
5.2.1圆整到2的N次方(对数) 95
5.2.2圆整到2的N次方(布尔) 96
5.2.3圆整至基数的倍数 96
5.2.4拆分浮点数(商与余数) 97
5.2.5拆分浮点数(圆整函数) 97
5.3简单离散数学工具 98
5.3.1判断闰年工具 98
5.3.2阶乘工具 98
5.3.3阶乘工具(对数) 99
5.3.4组合工具(公式法) 100
5.3.5组合工具(简化公式法) 100
5.3.6排列工具 100
5.3.7最大公约数工具 101
5.3.8最小公倍数工具 101
5.3.9所有因子工具 102
5.3.10完全数工具 102
5.3.11水仙花数工具 102
5.4索引数组工具 103
5.4.1 LabVIEW 2012隧道操作新特性 103
5.4.2索引1D数组工具 104
5.4.3行列索引2D数组工具 104
5.4.4依行或列索引2D数组工具 105
5.5数组相邻元素计算工具 105
5.5.1相邻元素的加法运算工具 105
5.5.2相邻元素的减法运算工具 106
5.5.3相邻元素的乘法运算工具 106
5.5.4相邻元素的除法运算工具 107
5.5.5相邻元素的定制算法运算工具 107
5.5.6相邻元素的其他算法运算工具 108
5.6数组搜索工具 109
5.6.1搜索1D数组所有匹配元素工具 109
5.6.2搜索2D数组所有匹配元素工具 110
5.6.3搜索2D数组所有匹配元素(2D转化为1D)工具 110
5.7交换数组元素工具 111
5.7.1交换1D数组元素工具 111
5.7.2交换2D数组元素工具 111
5.7.3交换数组相邻元素工具 112
5.8条件查找数组元素工具 113
5.8.1条件查找1D数组工具 113
5.8.2条件查找2D数组工具 113
5.9查找替换数组元素工具 114
5.9.1查找替换1D数组元素工具 114
5.9.2查找替换2D数组元素工具 114
5.10数组排序工具 115
5.10.1 1D数组排序工具 115
5.10.2 1D复数数组排序工具 115
5.10.3 2D数组排序工具 116
5.11删除数组元素工具 117
5.11.1删除1D数组元素工具 117
5.11.2删除2D数组元素工具 117
5.12过滤数组元素工具 118
5.12.1过滤单个数组元素工具 118
5.12.2过滤多个数组元素工具 118
5.13 2D数组镜像工具 119
5.13.1 2D数组垂直镜像工具 119
5.13.2 2D数组水平镜像工具 119
5.13.3 2D数组旋转90°工具 120
5.14 1D数组集合工具 120
5.14.1去除1D数组重复元素工具 120
5.14.2 1D数组并集集合工具 122
5.14.3 1D数组交集集合工具 122
5.14.4 1D数组补集集合工具 122
第6章 字符串与路径工具 124
6.1常用字符串工具 124
6.1.1添加引号、百分号工具 124
6.1.2删除引号工具 125
6.1.3行结束符(EOL)工具 126
6.1.4字符串填充工具 126
6.1.5缓冲字符串工具 128
6.1.6连接与拆分字符串工具 129
6.2 ASCII表工具 130
6.2.1扩展ASCII表 130
6.2.2基本ASCII表 131
6.3特殊字符 133
6.3.1特殊字符下拉列表 133
6.3.2特殊字符下拉列表的使用方法 134
6.3.3特殊字符枚举控件 134
6.4编码工具 135
6.4.1英文字符与Unicode的相互转换 135
6.4.2 LabVIEW字符串转换为Unicode字符串(API) 136
6.4.3 LabVIEW字符串转换至UTF8(内置函数) 137
6.4.4 .NET编码工具 137
6.5字符串的加密与解密 139
6.5.1按位翻转工具 139
6.5.2异或加密解密工具 140
6.5.3查表法加密解密工具 140
6.6正则表达式 141
6.6.1十进制整数的正则表达式 141
6.6.2二进制、八进制与十六进制整数的正则表达式 143
6.6.3浮点数正则表达式 143
6.7常用路径工具 144
6.7.1有效路径工具 144
6.7.2应用程序文件夹路径工具 144
6.7.3支持文件路径工具 145
第7章 基本数据结构工具 146
7.1功能型全局变量 146
7.1.1利用反馈节点创建读写功能全局变量 146
7.1.2利用反馈节点创建只读功能全局变量 147
7.1.3利用反馈节点创建可初始化功能全局变量 147
7.1.4利用循环创建可初始化功能全局变量 148
7.1.5创建功能全局变量模板 149
7.1.6全局停止工具 150
7.2累加器、均值器与收集器 152
7.2.1累加器 152
7.2.2均值器 153
7.2.3收集器 154
7.3动作机 156
7.3.1创建抽象的数据类型 156
7.3.2抽象数据映射 157
7.3.3创建动作机 158
7.4字典 159
7.4.1字典类的私有数据 159
7.4.2字典类的属性 160
7.4.3获取字典内容方法 160
7.4.4添加方法 161
7.4.5添加范围方法 162
7.4.6删除方法与删除范围方法 162
7.4.7清除方法 163
7.4.8索引方法 163
7.4.9根据键获取键值方法 164
7.4.10字典类转换为组合框方法 164
7.4.11组合框转换为字典类方法 164
7.4.12字典类存储对象的扩展 165
第8章 高级数据结构工具 166
8.1反馈节点FIFO 166
8.1.1配置反馈节点延迟属性 166
8.1.2反馈节点FIFO应用举例 166
8.2数组FIFO 167
8.2.1数组FIFO项目库 167
8.2.2数组FIFO工具输入端子与输出端子 167
8.2.3数组FIFO工具初始化动作 168
8.2.4数组FIFO元素的添加与移除动作 168
8.2.5数组FIFO应用举例 169
8.3队列FIFO动作机 169
8.3.1队列FIFO项目库 170
8.3.2队列FIFO动作机输入端子与输出端子 170
8.3.3队列FIFO的初始化动作 171
8.3.4队列FIFO的释放队列动作 171
8.3.5队列FIFO的加入元素动作与当前队列动作 172
8.3.6队列FIFO应用举例 172
8.4 LVOOP队列FIFO 172
8.4.1创建LVOOP队列FIFO的私有数据(队列引用) 173
8.4.2 LVOOP队列FIFO初始化方法 174
8.4.3 LVOOP队列FIFO释放方法 174
8.4.4 LVOOP队列FIFO的添加元素方法 175
8.4.5 LVOOP队列FIFO的状态方法 175
8.4.6 LVOOP队列FIFO应用举例 175
8.5数组堆栈 175
8.5.1数组堆栈项目库 176
8.5.2数组堆栈动作机输入端子与显示端子 176
8.5.3数组堆栈动作机 177
8.5.4数组堆栈应用举例 178
8.6队列堆栈 179
8.6.1队列三种入队方式 179
8.6.2队列堆栈动作机 179
8.6.3队列堆栈应用举例 180
8.7 LVOOP队列堆栈 181
8.7.1定义队列堆栈类的私有数据 181
8.7.2队列堆栈的初始化方法与释放方法 182
8.7.3队列堆栈的进栈方法与出栈方法 182
8.8批量功能型全局变量(内置) 182
8.8.1 lvconfig.llb库 183
8.8.2封装lvconfig.llb库函数 183
8.8.3批量功能全局变量应用举例 184
8.9哈希表 184
8.9.1变体属性与哈希表 185
8.9.2哈希表数据结构工具库 185
8.9.3创建核心TagVar Data动作机 185
8.9.4 TagVar Data动作机接口 189
8.9.5 TagVar Data动作机应用举例 190
8.10 MemBlock工具 191
8.10.1 MemBlock项目库 191
8.10.2 MemBlock动作机 191
8.10.3标签列表动作机 192
8.10.4 MemBlock初始化接口 194
8.10.5 MemBlock读取接口 194
8.10.6 MemBlock写入接口 194
8.10.7 MemBlock静态读取接口 195
第9章 API与动态链接库工具 196
9.1常用API函数 196
9.1.1常用API函数项目库 196
9.1.2窗口句柄工具 197
9.1.3窗口图标设置工具 198
9.1.4模拟击键工具 198
9.1.5模拟鼠标工具 200
9.1.6系统工具 202
9.2创建DLL 206
9.2.1利用CVI项目模板来创建DLL项目 207
9.2.2添加C函数与创建DLL 207
9.2.3 LabVIEW加载DLL 208
9.3可以直接传递的LabVIEW基本数据类型 209
9.3.1传递指向标量数据类型的指针 209
9.3.2传递指向一维标量数组的指针 210
9.3.3传递指向二维标量数组的指针 211
9.3.4传递指向简单对齐数值结构的指针 212
9.3.5传递简单结构 213
9.3.6传递字符串 214
9.3.7传递嵌套的简单数值结构指针 215
9.3.8传递包含数组的结构 216
9.4结构中元素对齐 217
9.4.1对齐问题的产生 217
9.4.2结构体对齐的基本原则 218
9.4.3编程设置对齐方式 218
9.5 DLL函数返回指针的处理 219
9.5.1打包DLL函数 220
9.5.2 GetValueByPointer工具 220
9.5.3 C接口函数 221
第10章 NET工具 223
10.1通用对话框 223
10.1.1如何使用.NET构造器 223
10.1.2颜色对话框 223
10.1.3字体对话框 224
10.1.4打开文件对话框 225
10.1.5消息框 226
10.2集合类 226
10.2.1迭代器 226
10.2.2 .NET队列数据结构 227
10.2.3 .NET哈希表 228
10.2.4动态数组 229
10.3状态条控件 229
10.3.1图像列表控件 229
10.3.2工具标签、进度条与分隔条 230
10.3.3状态栏控件类 231
10.3.4状态栏控件应用实例 232
10.4列表视图 233
10.4.1 列表视图类 233
10.4.2 列表视图类的重要方法与属性 234
10.4.3 列表视图应用举例 236
10.5 DataGridView控件 237
10.5.1 Data Column类 237
10.5.2 Data Table类 238
10.5.3 Data Set类 239
10.5.4 DataGridView应用示例 240
10.6.NET串口通信 243
10.6.1串口类 243
10.6.2写入文本行与读取文本行 244
10.6.3写入文本与读取文本 245
10.6.4写入字节数组与读取字节数组 246
10.6.5串口接收事件 246
10.7.NET发送电子邮件 248
10.7.1 Email类 248
10.7.2 Email类的重要方法 248
10.7.3 Email类高级接口方法 250
10.7.4邮件类应用实例 250
10.8.NET系统工具 251
10.8.1目录与文件管理工具 251
10.8.2驱动器信息工具 252
10.8.3进程管理工具 252
10.8.4系统管理类 253
10.8.5管理对象查询库 254
第11章 Ⅵ Scripting 256
11.1应用类工具 256
11.1.1应用类工具库 256
11.1.2 GUID工具 256
11.1.3获取内存中所有Ⅵ工具 257
11.1.4 Tag工具 257
11.1.5 ClassID和ClassName工具 258
11.1.6 AppName、 AppDir、 AppData工具 259
11.1.7判断运行环境与退出LabVIEW工具 260
11.1.8系统工具 260
11.1.9 Ⅵ相关工具 261
11.1.10剪贴板工具 261
11.1.11 Ⅵ标签工具 262
11.1.12全局数据工具 263
11.1.13 App类其他工具 263
11.2 Ⅵ类工具 264
11.2.1获取Ⅵ引用工具 264
11.2.2读取和写入控件值工具 265
11.2.3保存前面板和程序框图到图片工具 267
11.2.4打印Ⅵ到HTML文件并在浏览器中显示工具 267
11.2.5工具栏显示控制工具 268
11.2.6读取和设置运行菜单 268
11.2.7前面板布尔类型属性工具 269
11.2.8读取和设置前面板窗口边界与面板边界工具 269
11.2.9设置前面板居中显示工具 270
11.2.10读取与设置前面板的状态工具 270
11.2.11设置前面板原点工具 271
11.2.12打开、居中与关闭前面板工具 271
11.2.13获取前面板引用与前面板句柄工具 271
11.2.14获取前面板子对象引用 272
11.2.15获取具有焦点控件的引用 272
11.2.16 Ⅵ标签工具 273
11.3通用控件类工具 273
11.3.1操作控件值工具 273
11.3.2读写控件的禁用、可见与闪烁工具 274
11.3.3读写控件的位置、边界工具 274
11.3.4读写控件的说明与提示框信息工具 275
11.3.5通用对象属性工具 276
11.3.6获取标签与标题引用工具 276
11.3.7控件分组与锁定工具 276
11.3.8 获取控件UID工具 277
11.3.9获取控件或接线端的图片工具 277
11.3.10控件的高亮显示方法与控件重新初始化为默认值方法 278
11.3.11控件标签工具 278
11.3.12 LabVIEW内置的标签工具 278
11.4 IDE工具 279
11.4.1 LabVIEW的重要文件夹 279
11.4.2 IDE Menu存储工具 280
11.4.3 LabVIEW内置的Menu Launch工具 280
11.4.4 Ⅵ高级统计工具 281
11.4.5控件接线端图标显示工具 281
11.5 Ⅵ Scripting自动生成Ⅵ工具 282
11.5.1 Ⅵ脚本函数 282
11.5.2放置控件、函数与结构 283
11.5.3内置的未公开的装饰控件 284
11.5.4内置的未公开的控件 285
11.5.5内置的未公开CIN函数 285
11.5.6自动生成枚举控件、下拉列表控件、组合框控件 285
11.5.7字符串类型条件结构自动生成工具 287
第12章 列表框、表格和树形控件应用工具 289
12.1列表框 289
12.1.1列表框工具库 289
12.1.2列表框常用属性工具 290
12.1.3渐变颜色工具 292
12.1.4交替与渐进背景色列表框工具 293
12.1.5用户自定义符号动作机 293
12.1.6列表框项目操作工具 294
12.1.7列表框应用举例 295
12.2多列列表框工具 296
12.2.1多列列表框工具库 297
12.2.2四通道模拟数据采集 297
12.2.3多列列表框嵌入其他类型控件 298
12.3表格控件工具 301
12.3.1表格控件工具库 302
12.3.2表格控件特有的工具 302
12.3.3表格控件应用举例 305
12.4树控件工具 307
12.4.1树形控件工具库 307
12.4.2树形控件工具库的基本用法 308
12.4.3树形控件显示INI文件内容 309
12.4.4树形控件内置的拖动功能 310
12.4.5树形控件拖动功能(内置数据源) 310
12.4.6父项与子项 311
12.4.7动态更新项目 313
12.4.8设置自定义符号 314
第13章 图片实用工具 316
13.1颜色工具 316
13.1.1图片工具库 316
13.1.2 RGB和HSL颜色转换工具 316
13.1.3系统颜色工具 318
13.1.4颜色渐变工具 319
13.2矩形工具 321
13.2.1矩形不同表达形式的相互转换工具 321
13.2.2矩形操作基本工具 321
13.2.3偏移矩形工具 322
13.3基本形状绘制工具 323
13.3.1基本图形绘制工具的底层工具 323
13.3.2箭头工具 324
13.3.3绘制旋转矩形工具 325
13.3.4绘制星形工具 325
13.3.5其他基本图形绘制工具 326
13.4渐变图形绘制工具 326
13.4.1渐变圆形绘制工具 326
13.4.2渐变矩形绘制工具 327
13.4.3提取图片像素点工具 327
13.5图片工具应用举例 328
13.5.1利用图片文件屏蔽图片 328
13.5.2编程绘制屏蔽图片 329
13.5.3移动图片 329
13.5.4 RGB通道 330
13.5.5图片的透明叠加 331
13.5.6图标浏览器 332
13.5.7滚动字幕 333
13.5.8 RGB图像转换为灰度图 333
13.5.9渐变颜色饼图 334
13.5.10排列图片与图片加框 335
13.5.11图片的变换 336
13.6简单动画制作 337
13.6.1利用GIF文件播放动画 337
13.6.2利用装饰控件制作动画 338
13.6.3利用图片下拉列表控件制作动画 338
13.6.4利用图片控件制作动画 339
13.6.5利用二维图片控件数组制作动画 339
第14章 高级数据显示控件 340
14.1数值显示 340
14.1.1数值控件的高级显示 340
14.1.2选择开关 341
14.1.3多值的数值控件 341
14.1.4定制数值控件颜色梯度 342
14.1.5定制时间标识符 342
14.1.6变长数组 343
14.1.7簇的数组 343
14.2自定义控件 344
14.2.1自定义布尔控件 344
14.2.2自定义数值控件 346
14.2.3透明控件 347
14.3波形图表 347
14.3.1波形图表的组成对象 347
14.3.2上下限波形图表 348
14.3.3绝对时间波形图表 349
14.3.4多颜色曲线波形图表 350
14.3.5降采样波形图表 350
14.3.6多标尺波形图表 352
14.3.7不可预知数量的多曲线波形图表 352
14.4波形图 353
14.4.1波形图的游标图例 353
14.4.2基本波形生成器 354
14.4.3公式波形发生器 355
14.4.4控制波形是否可见 356
14.4.5降采样 357
14.4.6波形图与图片绘制 357
14.4.7抽取子波形 358
14.4.8动态添加与删除游标 359
14.4.9波形图注释 359
14.4.10绝对时间波形图与波形属性 360
14.5 XY图 361
14.5.1波形数据与XY图 361
14.5.2蝴蝶图 362
14.5.3李萨如图形 363
14.5.4缓冲XY图与翻转XY图 363
14.5.5波形图与XY图中的多颜色曲线 364
14.5.6 XY图可选平面 365
14.5.7罗盘图与羽状图 365
14.6三维数据显示 366
14.6.1强度图 366
14.6.2三维曲线图 367
14.6.3三维饼图 367
14.6.4三维等高线 368
14.6.5三维条形图 369
第15章 界面的层次化设计 370
15.1 XControl 370
15.1.1 XControl的作用 370
15.1.2 IP地址XControl 371
15.1.3确定IP地址XControl的数据类型与状态 371
15.1.4设计IP地址外观功能Ⅵ前面板 372
15.1.5 IP地址XControl执行状态更改事件与数据更改事件 372
15.1.6 IP地址XControl方向更改事件、显示状态更改事件与超时事件 373
15.1.7创建IP地址XControl的属性和方法 374
15.1.8创建IP地址控件快捷菜单与属性对话框 374
15.1.9 IP地址控件使用用户事件发送消息 375
15.1.10调试IP地址控件 376
15.2 XControl应用实例 377
15.2.1限定长度的字符串XControl 378
15.2.2计算器XControl 379
15.3利用选项卡对界面进行层次化设计 382
15.3.1属性对话框方式 382
15.3.2向导方式 382
15.3.3列表框+选项卡方式 383
15.3.4树形控件+选项卡方式 384
15.4对话框 385
15.4.1对话框与顶层Ⅵ、子Ⅵ的区别 385
15.4.2常用的内置对话框 385
15.4.3创建自定义对话框 386
15.4.4对话框导入导出数据 387
15.4.5模式对话框的调用方式 388
15.4.6非模式对话框 390
15.5动态调用 391
15.5.1静态Ⅵ引用与“通过引用调用”节点 391
15.5.2动态打开Ⅵ引用与“通过引用调用”节点 393
15.5.3后台任务 394
15.5.4闪屏 397
15.5.5动态调用可重入Ⅵ 398
15.5.6插件 399
15.6子面板与分隔栏 400
15.6.1隐藏子面板的边框 401
15.6.2动态调用子Ⅵ并插入到子面板 401
15.6.3列表框+分隔栏划分界面 402
15.6.4树形控件+分隔栏划分界面 403
第16章 面向对象编程 404
16.1 LabVIEW内置的类 404
16.1.1类的四大特性 404
16.1.2 Console工具 405
16.1.3抽象类 405
16.1.4具体类 406
16.1.5多态调用 406
16.1.6自定义构造函数和析构函数 407
16.2 G#类的基本概念 408
16.2.1 G#类模板 408
16.2.2传递引用 409
16.2.3 G#超类 410
16.2.4创建G#类的字段、属性和方法 410
16.3静态类 411
16.3.1创建静态类 411
16.3.2使用静态方法 411
16.3.3使用静态字段 412
16.4简单工厂与策略设计模式 412
16.4.1简单工厂模式类图 412
16.4.2简单工厂与策略模式项目 413
16.4.3具体类 414
16.4.4简单工厂类 414
16.4.5简单工厂模式应用举例 415
16.4.6策略模式类图 415
16.4.7策略模式应用举例 416
16.4.8简单工厂模式+策略模式应用举例 417
16.5外观模式 417
16.5.1外观模式项目与类图 417
16.5.2外观类 418
16.5.3外观模式应用举例 419
16.6模板模式 419
16.6.1模板模式项目与类图 420
16.6.2模板模式应用举例 421
16.7单件模式 421
16.7.1单件模式项目与类图 422
16.7.2单件模式应用举例 422
16.8建造者模式 423
16.8.1建造者设计模式项目与类图 423
16.8.2建造者设计模式应用举例 424
16.9观察者模式 424
16.9.1观察者设计模式项目与类图 425
16.9.2创建观察者抽象类与具体类 426
16.9.3观察者设计模式的推拉方式 426
16.9.4创建主题抽象类与具体类 427
16.9.5观察者设计模式应用举例 428
16.10中介者模式 428
16.10.1中介者设计模式项目与类图 429
16.10.2创建同事类以及具体同事类 429
16.10.3创建中介者类 430
16.10.4中介者设计模式应用举例 431
16.11命令设计模式 432
16.11.1命令设计模式项目与类图 432
16.11.2创建Receiver类 433
16.11.3创建Command超类和Concrete Command具体命令类 434
16.11.4创建Invoker调用者类 435
16.11.5命令设计模式简单应用举例 435
16.11.6宏命令 436
第17章 LabVIEW设计模式与项目模板 438
17.1串口通信组件 438
17.1.1组件的定义 438
17.1.2基于延迟的串口通信流程 439
17.1.3基于延迟的串口通信组件 440
17.1.4串口通信组件的自动配置 441
17.2跑马灯组件 442
17.3常量资源管理组件 445
17.4标准状态机 447
17.4.1命令序列 448
17.4.2顺序状态机 449
17.4.3标准状态机 451
17.4.4标准状态机模板 454
17.4.5同步状态图 455
17.5 UI单循环状态机 456
17.5.1如何表示状态 456
17.5.2“有限次测量”项目模板 457
17.5.3有限次测量流程图与程序框图 457
17.5.4 JKI UI单循环状态机 459
17.6队列状态机 461
17.6.1队列消息处理器 461
17.6.2“字符串+变体数据”队列状态机 462
17.6.3“自定义枚举+变体”队列状态机 463
17.6.4“字符串+字符串”队列状态机 464
17.6.5 LVOOP多态队列状态机 465