UG/NX Block UI Styler-表达式 Expression

一. 表达式控件功能概述‌

1. 核心功能
  • 动态属性绑定与计算

    • 支持通过表达式动态设置控件属性值,例如结合字段、运算符、函数实现逻辑计算(如 [Quantity] * [UnitPrice])‌。
    • 支持数据类型转换(如 ToDecimal())及条件格式控制(如 [Country] == 'USA')‌。
  • 数据验证与规则定义

    • 通过逻辑表达式限定输入范围(如 [OrderDate] > #2025-01-01#)‌。
    • 结合 MinimumValueMaximumValue 等属性定义数值边界,并通过 MinInclusive/MaxInclusive 控制区间闭合性‌。
  • 交互工具支持

    • 提供语法高亮、智能提示(自动补全字段、函数)和实时错误检测功能,降低编码错误率‌。

2. 关键属性分类
  • 基础属性

    • Label‌:控件标题,用于界面标识‌。
    • Enable‌:控制控件交互状态(启用/禁用)‌。
    • Show‌:控制控件可见性‌。
  • 数值约束

    • MinimumValue‌/‌MaximumValue‌:定义输入数值的合法范围‌。
    • LimitCheckTolerance‌:设置公差校验范围(负值表示动态计算)‌。
  • 交互与样式

    • PresentationStyle‌:选择输入方式(Keyin 直接输入或 Dropdown 下拉选择)‌。
    • BallonTooltipImage‌/‌BallonTooltipLayout‌:定义悬停提示的图片和布局方向‌。
  • 高级功能

    • RetainValue‌:会话间持久化控件值(如重启后保留输入值)‌。
    • ExpressionSortType‌:设置表达式排序规则(如按字母、时间戳)‌。

3. 典型应用场景
  • 参数化建模‌:通过 Value 属性驱动模型参数,结合数值约束实现动态尺寸控制‌。
  • 数据校验‌:利用表达式验证输入合法性(如邮箱格式、数值范围)‌。
  • 界面国际化‌:通过 AllowInternationalTextInput 支持多语言字符输入‌。

二. 表达式控件对话框属性中英文对照表

英文属性名 中文翻译 数据类型 值示例/选项 功能描述
BalloonTooltipImage 提示框图片

字符串

(路径)

"images/tootip.png" 设置鼠标悬停时显示的提示框图片路径,需确保路径有效
BalloonTooltipLayout 提示框布局 枚举值 Horizontal/Vertical 定义提示框内容的排列方向(水平或垂直)
BalloonTooltipText 提示框文本 UTF-8 字符串 "请输入有效数值" 显示悬停时的辅助说明文本,支持多语言编码
Dimensionality 量纲类型 枚举值 无单位/长度/质量 定义参数是否需要单位(如无单位或需关联物理量类型)
Formula 计算公式 UTF-8 字符串 "A1+B1" 存储动态计算的表达式,支持实时更新数值
HasUnitsMenu 显示单位菜单 布尔值 True/False 控制是否启用单位选择下拉菜单(需与 Dimensionality 配合使用)
LimitCheckTolerance 限值检查容差 双精度数值 0.01 定义数值校验时的允许误差范围(如 Value 与 Min/Max 的偏差阈值)
MaximumValue 最大值 双精度数值 100.0 设定数值输入上限,配合 MaxInclusive 控制是否包含边界值
MaxInclusive 包含最大值 布尔值 True/False 定义最大值是否可被实际输入值等于(如 ≤100 或 <100
MinimumValue 最小值 双精度数值 0.0 设定数值输入下限,配合 MinInclusive 控制是否包含边界值
MinInclusive 包含最小值 布尔值 True/False 定义最小值是否可被实际输入值等于(如 ≥0 或 >0
ShowSpin 显示增减按钮 布尔值 True/False 控制是否在输入框旁显示数值调节按钮(用于微调数值)
Value 当前值 双精度数值 50.0 存储用户输入或计算后的实际数值,支持实时同步更新
WithScale 启用比例尺 布尔值 True/False 是否在输入框旁显示比例尺(用于直观展示数值范围)

关键说明

  1. 交互控制

    • ShowSpin 和 HasUnitsMenu 可通过布尔值快速启用/禁用界面元素的辅助功能‌。
    • BalloonTooltipLayout 的 Horizontal 适用于紧凑布局,Vertical 适合多行文本提示‌。
  2. 数值约束

    • MinInclusive 和 MaxInclusive 需与 MinimumValue/MaximumValue 配合使用,定义闭区间或开区间‌。
    • LimitCheckTolerance 在工程参数校验中尤为重要,避免因浮点数精度问题导致误报‌。
  3. 动态计算

    • Formula 支持使用类似 "A1+B1" 的表达式实现自动化计算,需确保引用对象存在‌。
    • Value 的值会根据 Formula 或用户输入实时更新,并受 Min/Max 约束‌。

你可能感兴趣的:(UG二次开发,Block,UI,styler,ui,c++,编辑器)