经常会看到别人在QQ群里问选择面控件的选择规则如何更改,默认的总是相切面,想默认就变成单个面要怎么做。
一开始这个问题我也不知道,因为工作中还没遇到过这种需求。
后来QQ群里,有群友发了解决方法,我就记录了下来,方便以后查找。
方法1:在代码上设置
NX9+VS2012 //在dialogShown_cb()里加上这段代码 face_select0->SetSelectModeAsString("Single");//设置控件单选 //face_select0->SetSelectModeAsString("Multiple");//设置控件多选 face_select0->SetFaceRules(1);//设置面的选择规则 Caesar卢尚宇 2020年11月20日
方法2:在blockUI上设置
API帮助说明
帮助中这个方法输入的是一个int类型,到底int值应该输入多少对应哪个规则类型,我在帮助上没有找到。
但是我找到了一个变通的方法,去blockui对话框上面找值。
输入0x1就是单选面
face_select0->SetFaceRules(0x1);
输入0x41就是单选+相邻面
face_select0->SetFaceRules(0x41);
输入0x5就是单选+相切面
附加
是16进制转换的 0x1就是1
这也就解释的通 你们之前为什么单选面输入的是1了,而输入0x1也是单选面
有网友张找到这些宏定义
使用方法
//方法1 int i = FaceRules_SingleFace; face_select0->SetFaceRules(i); //方法2 face_select0->SetFaceRules(1 << 0);
解释
Caesar卢尚宇
2020年11月20日