• NX二次开发-Block UI C++界面Enumeration(枚举)控件的获取(持续补充)


     1     NX9+VS2012
     2     
     3     public:
     4     
     5         void SetBlockUIShow();
     6 
     7 
     8     void EnumInt::SetBlockUIShow()
     9     {
    10         //获取枚举控件
    11         PropertyList*  EnumProps = enum0->GetProperties();
    12         int EnumValue = EnumProps->GetEnum("Value");
    13         delete EnumProps;
    14         EnumProps = NULL;
    15 
    16     //得到ini类型值
    17     //条件判断,当枚举为下拉第一个时显示哪些控件
    18         if ( EnumValue == 0 )
    19         {
    20             face_select0->SetShow(true);
    21             bodySelect0->SetShow(false);
    22         }
    23         else
    24         {
    25             face_select0->SetShow(false);
    26             bodySelect0->SetShow(true);
    27         }
    28     }
    29     //使用方法
    30     将自己写的函数SetBlockUIShow();加到如下地方:
    31     1.dialogShow里
    32     void EnumInt::dialogShown_cb()
    33     {
    34         try
    35         {
    36             //---- Enter your callback code here -----
    37 
    38         SetBlockUIShow();//此处
    39 
    40         }
    41     catch(exception& ex)
    42         {
    43             //---- Enter your exception handling code here -----
    44             EnumInt::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox::DialogTypeError, ex.what());
    45         }
    46     }
    47 
    48     2.update_cb里的枚举控件下
    49     int EnumInt::update_cb(NXOpen::BlockStyler::UIBlock* block)
    50     {
    51         try
    52         {
    53             if(block == enum0)
    54             {
    55             //---------Enter your code here-----------
    56 
    57             SetBlockUIShow();//此处
    58 
    59         }

    1     //设置名字
    2     enum0->SetLabel("选择");
    3 
    4     //设置控件变灰色
    5     enum0->SetEnable(false);
    6     
    7 
    8     //设置控件是否显示
    9     enum0->SetShow(true);
       

        //获取枚举控件,当前选择的名称
        NXString EnumName = EnumProps->GetEnumAsString("Value");
        uc1601(EnumName.GetLocaleText(), 1);

     补充 20020年4月27日

    设置枚举下拉内容
    vector<NXString> AA;
    AA.push_back("1");
    AA.push_back("2");
    AA.push_back("3");
    enumOneName->SetEnumMembers(AA);   

     Caesar卢尚宇

  • 相关阅读:
    IIS 和 各个协议
    Hibernate 框架基本知识
    各类主流框架及设计模式简介
    PHP微信公众开发笔记(七)
    PHP微信公众开发笔记(六)
    《Programming in Lua 3》读书笔记(二十七)
    《Programming in Lua 3》读书笔记(二十八)
    《Programming in Lua 3》读书笔记(二十六)
    PHP微信公众开发笔记(五)
    PHP微信公众开发笔记(四)
  • 原文地址:https://www.cnblogs.com/nxopen2018/p/10976049.html
Copyright © 2020-2023  润新知