NX二次开发-Block UI C++在代码中设置、获取枚举控件的值、设置字符串
到目前为止,我依旧是个小白,又或者可以说是一个对NX二次开发有一点点了解的初学者。至于为什么会写博客,首先是受一些大佬的影响,其次也是为了方便自己管理自己的代码,同时也希望对有需要的人有所帮助。这是我的第一篇博客,可能会有很多不足之处,如果可以,也希望各位可以为我指点一二,我也会持续改进。
设置枚举值:
1、设计完UI过后,在生成的cpp文件中找到dialogShown_cb()这个回调函数。
void Enum::dialogShown_cb()
{
try
{
//---- Enter your callback code here -----
vector<NXString> enumMember = {"是","否" };//此处写入你需要的枚举值
mEnum->SetEnumMembers(enumMember);//设置枚举值
m_string->GetProperties()->SetString("Value", "字符");//设置字符串
}
catch(exception& ex)
{
//---- Enter your exception handling code here -----
CreateHoleMachGui::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox::DialogTypeError, ex.what());
}
}
获得枚举值:
//方法一
//该方法拿到的是具体的字符串
PropertyList* enumProps = mEnum->GetProperties();
NXString enumValue = enumProps->GetEnumAsString("Value");
string a=enumValue.GetLocaleText();
//方法二
//方法二拿到的是枚举值用0、1、2...表示
PropertyList* enumProps = mEnum->GetProperties();
int enumValue = enumProps->GetEnum("Value");

浙公网安备 33010602011771号