UG CAM批量创建程序组功能代码,通过函数uc1613让用户输入初始的程序组名和要创建的个数,程序根据用户界面输入的数据进行循环批量创建(如下图)
注:具体运用请结合您自己的功能需求进行修改
批量创建程序组示例代码:
//获取界面输入的数据int ijunk[2], resp, strings[2] = { 301, 301};double djunk[2] ={ 0.0, 0.0};char menu[2][16] = { "程序组开始", "添加个数" }, user_input[2][31] = { "A01", "5" };resp = uc1613("胡君批量添加程序组", menu, 2, ijunk, djunk, user_input, strings);if(resp > 2){/*点击确定按钮,开始批量创建程序组*///获取当前部件的UF_SETUP对象tag_t setupTag=NULL_TAG;UF_SETUP_ask_setup(&setupTag);//获取根组tag_t rootGroup=null_tag;UF_SETUP_ask_program_root(setupTag,&rootGroup);//循环创建,个数通过uc1613界面获得int hits=0;string strNewName=user_input[0];while(hits<atoi(user_input[1])){if(hits>0){/*此nextStrNum函数功能为对一个字符串末尾数字+1,比如 nextStrNum("NC009"),返回结果为NC010如需此函数源码可联系胡君QQ:85585969*/strNewName=nextStrNum(strNewName);}//创建新的tag_t newObject = NULL_TAG;UF_NCPROG_create("mill_planar","PROGRAM",&newObject);//设定名称(此名称是通过用户界面获得)UF_OBJ_set_name(newObject, strNewName.c_str());//在根组下创建程序组(创建之前应该还需要提前判断一下是否可以创建,我这里就省略了)UF_NCGROUP_accept_member(rootGroup,newObject);hits++;}//刷新导航器UF_UI_ONT_refresh();uc1601("创建成功",1);}
效果演示:
转自:/thread-6228.html