2. 关键组件
- 输入参数
-
- VI names:包含Read Palette.vi和Write Palette.vi的路径,用于关联调色板中的功能项。
- display name:新调色板的显示名称,示例中为 “Palette API”。
- palette description:对调色板的描述信息,示例中说明其用于通过调色板 API VI 获取 / 设置.mnu 文件信息。
- picture constant:256 色图标,通过Read PNG File VI读取图像并经Draw Flattened Pixmap VI处理后创建的常量,用于在调色板中显示图标。
- Palette File Path:生成的.mnu 文件路径,示例中为user.lib\PaletteAPI.mnu。
- 执行流程
-
- 构建palette data簇,填充显示名称、描述、图标等基础信息。
- 将关联的 VI 路径添加到items数组,定义调色板包含的功能项。
- 调用Write Palette.vi,将配置写入指定路径的.mnu 文件。
- 调用Refresh Palettes方法,即时刷新 LabVIEW 的调色板显示。
3. 运行效果
- 运行后,在Functions > User Libraries下会出现 “Palette API” 子调色板,包含关联的 VI 功能项。
- 其他依赖该示例的调色板编辑 API 示例需先运行此 VI。
- 不再需要该示例子调色板时,需删除LabVIEW\user.lib\PaletteAPI.mnu文件并重启 LabVIEW。
二、 .mnu 文件知识
1. 功能用途
.mnu 文件是 LabVIEW 中的菜单文件( Menu File ) ,用于存储自定义菜单(包括调色板菜单)的结构和配置信息。在调色板场景中,它记录了调色板的层级结构、显示名称、关联功能项、图标路径、描述等关键信息,是 LabVIEW 识别和加载自定义调色板的核心依据。
2. 创建与编辑
- 创建方式
-
- 右键点击项目浏览器中的 “我的电脑” 或某个 VI,选择 “新建 → 菜单”。
- 在菜单编辑器中设计调色板的层级结构、设置各功能项的名称、图标、关联 VI 等属性。
- 保存时自动生成.mnu 格式文件,如上述示例中生成的PaletteAPI.mnu。
- 编辑方式:直接双击.mnu 文件,打开菜单编辑器进行修改,修改后保存即可更新配置。
3. 使用方式
- 复用性:一个.mnu 文件可被多个 VI 或项目引用,实现相同调色板配置在不同场景中的复用。
- 关联设置:在 VI 的属性设置中,可指定使用某个.mnu 文件作为其对应的调色板菜单,使 VI 运行时加载自定义的功能项组织方式。
- 加载机制:当 LabVIEW 启动或调用Refresh Palettes方法时,会扫描并加载.mnu 文件,根据其中的配置生成对应的调色板界面。
4. 关联文件
- 与 LabVIEW 项目文件(.lvproj)关联,作为项目资源的一部分进行管理。
- 与被引用的 VI 文件关联,.mnu 文件中记录的items数组实际指向这些 VI 的路径,确保调色板功能项能正确调用对应的代码。
三、两者关系
调色板创建 VI(如示例中的 VI)是操作.mnu 文件的 “工具”,通过Write Palette.vi将用户定义的调色板配置写入.mnu 文件;而.mnu 文件是 “载体”,存储着这些配置信息,供 LabVIEW 加载和显示调色板。二者结合,实现了从调色板设计、配置存储到界面呈现的完整流程,是 LabVIEW 自定义功能组织的重要技术组合。
总结
- 调色板创建 VI 通过Write Palette.vi生成.mnu 文件,实现新调色板的创建与即时刷新。
- .mnu 文件作为核心载体,存储调色板的结构、功能项等配置信息,支持复用与灵活编辑。
- 两者协同工作,构成 LabVIEW 自定义调色板功能的完整实现机制。