Block UI 属性类型的读写总结:

帮助文件 NXOpen::BlockStyler::UIBlock::GetProperties()

String类型

//设置值
this->块ID->GetProperties()->SetString("属性名", NXString("字符串")); //获取值
NXString NXstrTemp = "";
NXstrTemp = this->块ID->GetProperties()->GetString("属性名");
char cTemp[133] = "";
strcpy_s(cTemp, 133, NXstrTemp.GetLocaleText());
string strTemp = cTemp;

Strings类型

//设置值
vector<NXString> vecMates;
vecMates.push_back(NXString("字符串1"));
vecMates.push_back(NXString("字符串2"));
vecMates.push_back(NXString("字符串3"));
this->块ID->GetProperties()->SetStrings("属性", vecMates); //读取值
vector<NXString> vecMates;
vecMates = this->块ID->GetProperties()->GetStrings("属性", vecMates);
vector<string> vecStrMates;
for (int i = 0; i < vecMates.size(); i++)
{
vecStrMates.push_back(vecMates[i].GetLocaleText());
}

Logical类型

//设置值
this->块ID->GetProperties()->SetLogical("属性", true); //读取值
bool boolShow = this->块ID->GetProperties()->GetLogical("属性");

Enum类型

//设置值
int intEnum0Value = 0;
this->块ID->GetProperties()->SetEnum("属性", intEnum0Value); //读取值
int intEnum0Value = this->块ID->GetProperties()->GetEnum("属性");

Integer类型

//设置值
int iValue = 99;
this->块ID->GetProperties()->SetInteger("属性", iValue); //获取值
int iValue = this->块ID->GetProperties()->GetInteger("属性");

Double类型

//设置值
double douValue = 99.0;
this->块ID->GetProperties()->SetDouble("属性", douValue); //获取值
double douValue = this->块ID->GetProperties()->GetDouble("属性");

Vector类型

//设置值
double douDir[3] = { 0.0,0.0,1.0 };
Vector3d vecDir(douDir[0], douDir[1], douDir[2]);
this->块ID->GetProperties()->SetVector("属性", vecDir); //获取值
double douDir[3] = {0.0,0.0,0.0};
Vector3d vceDir = this->块ID->GetProperties()->GetVector("属性");
douDir[0] = vceDir.X;
douDir[1] = vceDir.Y;
douDir[2] = vceDir.Z;

Point类型

//设置值
double douPoint[3] = { 0.0,0.0,1.0 };
Point3d poPoint(douPoint[0], douPoint[1], douPoint[2]);
this->块ID->GetProperties()->SetVector("属性", poPoint); //获取值
double douPoint[3] = {0.0,0.0,0.0};
Point3d poPoint = this->块ID->GetProperties()->GetVector("属性");
douPoint[0] = poPoint.X;
douPoint[1] = poPoint.Y;
douPoint[2] = poPoint.Z;

Tag类型

坐等大佬补充,请发到评论中

Utfstring类型

坐等大佬补充,请发到评论中

Utfstrings类型

块ID->SetListItems(vecList);

Stlvector类型

//设置值
vector<int> vecE(2);
vecE[0] = 1;
vecE[1] = 0;
this->块ID->GetProperties()->SetIntegerVector("属性", vecE); //获取值

Attachment类型

坐等大佬补充,请发到评论中

File类型

坐等大佬补充,请发到评论中

Bits类型

//设置值
this->块ID->GetProperties()->SetBits("属性", 0x800); //获取值
...

【NX二次开发】Block UI 属性类型的更多相关文章

  1. NX二次开发-Block UI C++界面关于 在Block UI中UF_initialize();和UF_terminate();的使用

    关于 在Block UI中UF_initialize();和UF_terminate();的使用 用Block UI作NX二次开发的时候,不需要在使用UFUN函数的时候加UF_initialize() ...

  2. NX二次开发-Block UI C++界面Specify Point(指定点)控件的获取(持续补充)

    Specify Point(指定点)控件的获取 NX9+VS2012 #include <uf.h> #include <uf_ui.h> UF_initialize(); / ...

  3. NX二次开发-Block UI C++界面Object Color Picker(对象颜色拾取器)控件的获取(持续补充)

    Object Color Picker(对象颜色拾取器)控件的获取 NX9+VS2012 #include <uf.h> #include <uf_obj.h> UF_init ...

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

    NX9+VS2012 public: void SetBlockUIShow(); void EnumInt::SetBlockUIShow() { //获取枚举控件 PropertyList* En ...

  5. NX二次开发-Block UI C++界面Toggle(开关)控件的获取(持续补充)

    NX9+VS2012 public: void SetBlockUIShow(); void ToggleInt::SetBlockUIShow() { //获取开关控件 //获取枚举控件 Prope ...

  6. NX二次开发-Block UI C++界面(表达式)控件的获取(持续补充)

    Expression(表达式)控件的获取 NX9+VS2012 #include <uf.h> #include <uf_modl.h> UF_initialize(); // ...

  7. NX二次开发-Block UI C++界面Face Collector(面收集器)控件的获取(持续补充 )

    Face Collector(面收集器)控件的获取 NX9+VS2012 #include <uf.h> #include <uf_obj.h> UF_initialize() ...

  8. NX二次开发-Block UI C++界面Body Collector(体收集器)控件的获取(持续补充)

    Body Collector(体收集器)控件的获取 NX9+VS2012 #include <uf.h> #include <uf_obj.h> UF_initialize() ...

  9. NX二次开发-UFUN所有对象类型的宏定义

    /**************************************************************************** Copyright (c) 2010 Sie ...

随机推荐

  1. I/O流以及文件的基本操作

    文件操作: 文件操作其实就是一个FIle类:我们学习文件操作就是学习File类中的方法: 文件基操: 第一部分:学习文件的基本操作(先扒源码以及文档) Constructor Description ...

  2. Serverless实践-静态网站托管

    Serverless实践-静态网站托管 超多图预警!!! 本文旨在帮助不懂运维/网络/服务器知识的小白,在不租用云服务器的情况下,实现Web站点的上线部署 适合边看文章边跟着动手做 包含使用Githu ...

  3. 对spring创建对象时为何要使用接口

    对spring创建对象时为何要使用接口,而使用接口的实现类会报错 接上一篇问题的解答:Spring AOP获取不了增强类(额外方法)和无法通过getBean()获取对象 此问题发生在动态代理时,比如对 ...

  4. golang:并发编程总结

    并行和并发 并发编程是指在一台处理器上"同时"处理多个任务. 宏观并发:在一段时间内,有多个程序在同时运行. 微观并发:在同一时刻只能有一条指令执行,但多个程序指令被快速的轮换执行 ...

  5. CentOS 8 配置 VNC Server

    CentOS 8 配置 VNC Server 2020-12-31 | 标签: centos, vnc 前言 CentOS 8 配置 VNC Server, 使用户可以远程访问,本例介绍安装和配置流程 ...

  6. mate桌面用户 root 自动登录lightdm.conf -20190520 方法【fedora 21】mate

    桌面用户自动登录lightdm.conf -20190520 方法修改 /etc/lightdm/lightdm.conf 步骤:1 vim  /etc/lightdm/lightdm.conf 解除 ...

  7. linux环境下/etc/hosts文件详解

    linux环境下/etc/hosts文件详解 就没一个昵称能用关注 0.0632017.09.12 17:04:28字数 623阅读 27,096 介绍 hosts文件是linux系统中负责ip地址与 ...

  8. Linux性能监控与分析之--- CPU

    Linux性能监控与分析之--- CPU 望月成三人关注 2016.07.25 18:16:12字数 1,576阅读 2,837 CPU性能指标 用户进程使用CPU的比率 系统进程使用CPU的比率 W ...

  9. JDK 14 都已经发布了,Java 8 依然是我的最爱

    在 JDK 版本的世界里,从来都是 Oracle 发他的新版本,我们 Java 程序员继续用我们的老版本 几年之前用 JDK 7,后来终于升级到了 JDK 8.自从升级了没多久,JDK 就开始了半年发 ...

  10. lvresize 调整LVM逻辑卷的空间大小,可以增大空间和缩小空间

    lvresize 相关命令:lvreduce,lvextend,lvdisplay,lvcreate,lvremove,lvscan   lvresize指令:调整逻辑卷空间大小[语    法]lvr ...