分割条是在前面板创建专业用户界面的工具,可将前面板划分为多个独立区域(称为 “面板”,Panes)。每个面板的功能特性如下:
独立操作:各面板可单独滚动,互不影响。
控件隔离:每个面板拥有独立控件集,分割条会隔离不同面板的控件,但这些控件的端子仍属于同一程序框图。
动态调整:支持允许用户在程序运行时移动分割条,根据需求调整各面板尺寸。
初始状态:任意 VI 的前面板默认只有一个 “主面板”,该面板填满整个窗口,且由前面板作为其父对象。
层级变化:每次向某一面板中添加分割条时,分割条会取代原面板在层级中的位置,并生成两个新面板(新面板仍由前面板所有);同时,分割条本身也归前面板所有。
选择方式:可通过遍历分割条 / 面板数组,或创建引用(Reference)来选中分割条或面板。
配置核心是定义 “窗口 / 面板调整时的交互规则”,需明确三个关键问题:用户调整窗口大小时,哪些面板会随之扩展?用户是否可调整所有面板尺寸?面板调整时,其上的控件如何响应?
配置方式有两种:通过分割条的快捷菜单,或使用属性节点(Property Nodes)。
分割条的 “尺寸设置”(Splitter Sizing)和面板的 “尺寸设置”(Pane Sizing)子菜单,提供以下核心规则:
分割条位置固定:可设置分割条 “吸附到左子面板边缘”(Sticks to Left)或 “吸附到右子面板边缘”(Sticks to Right),保持与对应边缘的距离不变。
示例:若前面板有一个垂直分割条,且设置为 “Sticks to Left”,则调整窗口宽度时左面板尺寸不变 —— 从右侧缩小窗口,分割条不移动;从左侧缩小窗口,分割条会随窗口左边缘同步移动,维持与左边缘的距离。
分割条比例固定:设置为 “Splitter Sizes Proportionally” 时,分割条会保持左右(或上下)两个子面板的尺寸比例不变。
可配置面板上的控件在面板调整时的行为,核心选项如下:
固定位置:通过 “Pane Sizing” 子菜单选择控件需 “吸附” 的面板边缘(如 “Origin Sticks Right”,控件保持与面板右边缘的距离不变)。
单独缩放:选中单个控件,设置 “Scale Object with Pane”,该控件会随面板尺寸同步缩放;若已指定一个控件缩放,面板会显示灰色线条,标记其他控件相对于该缩放控件的位置关系(运行时灰色线条消失)。
全部缩放:通过 “Pane Sizing” 子菜单选择 “Scale all Objects with Pane”,面板上所有控件会随面板尺寸同步缩放和重定位。
工具栏本质是 “预留用于放置常用控件的独立面板”,其他区域可自由滚动或进一步分割。
创建步骤:
在前面板添加 “水平分割条”(Horizontal Splitter);
在上方面板放置常用控件;
配置关键属性:
分割条设置为 “Locked”(锁定)和 “Sticks to Top”(吸附到顶部);
上方面板的滚动条设置为 “Always Off”(始终隐藏);
(可选)调整面板颜色和分割条尺寸,使工具栏与菜单栏无缝融合。
与工具栏创建逻辑一致,核心差异是 “位置与吸附规则”:
在前面板底部附近添加水平分割条;
在下方面板放置状态栏相关控件(如状态显示、进度条等);
将分割条设置为 “Locked” 和 “Sticks to Bottom”(吸附到底部),下方面板滚动条设为 “Always Off”。
每个面板的滚动条有 3 种可见性设置:
Always On:始终显示;
Always Off:始终隐藏;
Off While Running:编辑模式可见,运行模式隐藏。
配置步骤:右键点击相邻的分割条 → 在分割条快捷菜单中找到对应面板的子菜单 → 选择滚动条(水平 / 垂直)的设置选项。
右键点击分割条 → 在快捷菜单中勾选 “Locked”,即可锁定分割条位置,禁止用户移动。
提供两种删除方式,适用于不同层级场景:
删除整个分割条层级:右键点击分割条 → 选择 “Remove Entire Splitter Hierarchy”,删除该分割条及其所有子分割条,原分割条隔离的多个面板会合并为一个大面板,控件位置保持不变。
删除分割条及相邻分割条:右键点击分割条 → 选择 “Remove with Adjoining Splitters”,删除该分割条及 “端点接触该分割条” 的所有相邻分割条,合并规则同上。
前提:面板中仅存在一个控件。
操作:右键点击该控件 → 选择 “Fit Control to Pane”,控件会自动缩放至填满面板,并默认开启 “Scale Object with Pane”,后续面板调整时仍保持填满状态。
可通过 “面板的 Set Scaling 方法”(Pane's Set Scaling Method),以编程方式设置 “单个控件缩放” 或 “所有控件缩放”。
楼主最近还看过