NX二次开发 BlockUI 选择 01、选择对象
01、选择对象
捕捉
PointOverlay 是否显示捕捉点
SmartUpdateOption 智能更新选项
Within Modeling 在建模
After Modeling 建模后
After Parent Body 实体父后
Mixed 混合
SnapPointTypesEnabled 设置捕捉点类型的可见性
SnapPointTypesOnByDefault 设置捕捉点类型相关的内容被启用
常规
BlockID 控件id
Enable 是否可选/禁用控件
Group 组
Show 是否可见
其它
附着
Bottom 底
Left 左
Right 右
Top 顶
特定于块
AutomaticProgression 选择后焦点是否自动跳到下一个控件
BalloonTooltipImage 动态提示图片(鼠标移动到控件是显示图片)
BalloonTooltipLayout 动态提示布局
BalloonTooltipText 动态提示文本内容
Bitmap 指定图片
BlendVirtualCurveOverlay 是否显示虚拟交线
CreateInterpartLink 是否显示部件间连接图标在选择条上
Cue 提示
InterpartSelection 部件间选择设置
Simple 简单
Non-associative Interpart Copy Only 只复制部件间非关联
Associative and Non-associative Interpart Copy 复制部件间关联和非关联
Associative Interpart Copy 复制部件间关联
LabelString 标签标题
MaximumScope 设置选择范围
Entire Assembly 所有组件/装配
Within Work Part Only 只是工作部件
Within Work Part and Components 工作部件和组件/装配)
SelectMode 设置单选/多选
Single 单选
Multiple 多选
StepStatus 设置确定和应用按钮什么时候高亮(Required 必需的时候)(Optional 可选的时候)(Satisfied 满意/满足的时候)
Tooltip 动态提示文本标题(Bitmap指定图片时,鼠标移动到图片时提示文字)
————————————————————————————————————————————
//设置选择类型过滤
void dlx_selection_set_selection_filter(NXOpen::BlockStyler::UIBlock *block, std::vector< NXOpen::Selection::MaskTriple > maskTriple)
{
NXOpen::BlockStyler::PropertyList *selComponentProps = block->GetProperties();
selComponentProps->SetSelectionFilter(“SelectionFilter”, Selection::SelectionActionClearAndEnableSpecific, maskTriple);
delete selComponentProps;
selComponentProps = NULL;
}
//设置选择对象(工作部件/组件)
void dlx_selection_set_maximum_scope(NXOpen::BlockStyler::UIBlock *block, const char *strStepStatus)
{
block->GetProperties()->SetEnumAsString(“MaximumScope”, strStepStatus);
}
//设置选择对象(单选/多选)【用于选择对象、面收集器、体收集器】
void dlx_selection_set_select_mode(NXOpen::BlockStyler::UIBlock *block, const char *strSelectMode)
{
block->GetProperties()->SetEnumAsString(“SelectMode”, strSelectMode);
}
//获得选择对象【用于选择对象、面收集器、体收集器】
void dlx_selection_ask_selected_objects(NXOpen::BlockStyler::UIBlock block, CUIntArray &tObjectTags)
{
std::vector<TaggedObject> objects;
objects = block->GetProperties()->GetTaggedObjectVector(“SelectedObjects”);
CUIntArray_Copy_TaggedObjects(objects, tObjectTags);
}
//设置选择对象【用于选择对象、面收集器、体收集器】
void dlx_selection_set_selected_objects(NXOpen::BlockStyler::UIBlock block, CUIntArray &tObjectTags)
{
std::vector<TaggedObject> objects;
TaggedObjects_Copy_CUIntArray(tObjectTags, objects);
block->GetProperties()->SetTaggedObjectVector(“SelectedObjects”, objects);
}