NX插件
送教程
DoTeam
培训报名
AI · CAD · PLM
首页
Portal
社区
论坛
NX技术
TC技术
Catia技术
自研系统
更多
登录
NX Toolkits 「PLM之家插件」
Castsim「铸造PLM系统」
EchoCAD「大模型CAD」
视频在线
实践教程
前沿咨询
高清购买
国产软件
PLM之家PLMHome-工业软件践行者,大模型驱动工业生态建设
»
社区
›
工业4.0-PLM之家培训中心
›
NX二次开发培训
›
使用内部函数实现枚举类型宽度设置
返回列表
发新帖
查看:
1266
|
回复:
0
[资料分享]
使用内部函数实现枚举类型宽度设置
[复制链接]
admin
admin
当前离线
积分
60
6
主题
4
回帖
60
积分
管理员
积分
60
发消息
发表于 2023-3-6 12:00:22
|
显示全部楼层
|
阅读模式
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要
登录
才可以下载或查看,没有账号?
注册
×
% P& W8 c' j9 D# b+ a: f( `7 {
, ^/ Q1 G2 T" f# P' I2 h) [
使用内部函数实现枚举类型宽度设置
8 p5 }% V' r: ^& Z
) e) A4 C3 Q, h/ g6 \* Q
可以自由设置宽度了
3 w+ Z8 j; R/ e W* R7 H) D$ N& e
4 f, _1 s( e1 Y$ E
void Utilities_InternalFunctionCast::setEnumBlockWidth(tag_t enumTag, int widthValue)
( n/ i4 b2 o0 D6 N k$ b/ t
{
. w& ]' H( E' C, j9 n7 O, n
" k* \2 e6 C7 L" k8 H# O
HMODULE uifw = LoadLibrary(INTERNAL_UIFWLIB);
- |; L' b+ Z% l3 B; n8 v
HMODULE syss = LoadLibrary(INTERNAL_SYSSLIB);
- Z2 n2 |& P4 e1 v
typedef void* (*TagToPtr_fp_t)(tag_t);
( j) T' r5 g9 c' m0 O& e& D
typedef void(*setWidth_fp_t)(void*, int);
$ N9 U) t2 F0 o" d y
! m' J7 m: y- {! t4 h
TagToPtr_fp_t TagToPtr = NULL;
0 Q; }2 _1 U: ~$ {) i
setWidth_fp_t setWidth = NULL;
' N$ V2 ?2 x; j+ d! F! G
, I* Z" S8 r1 a3 w: ]) ]
char* ptrName = "?TAG_ask_pointer_of_tag@@YAPEAXI@Z";
: v, z) t3 i- g; @
char* widthName = FUNCTIONNAME_SETENUMWIDTH;
' v# s( H$ ~( _5 K' {. z4 Z
6 W8 J. V( K c$ F. x; R- G
TagToPtr = (TagToPtr_fp_t)GetProcAddress(syss, ptrName);
+ p: r( N3 J( H+ W9 e- O4 v+ w
setWidth = (setWidth_fp_t)GetProcAddress(uifw, widthName);
3 A4 a9 C& ^: s* Z! k
7 r! B0 J) N; n) _, l: J: m6 }+ A4 C
if (TagToPtr != NULL && setWidth != NULL)
; o1 j! s+ A! f) _& f6 U( c" @
{
" A5 _1 A# t( V1 T
setWidth(TagToPtr(enumTag), widthValue);
3 x0 w) [& u: @3 w/ l& P
}
. Q# a# R( E; L1 v! C) y) x
FreeLibrary(uifw);
2 B7 {! d0 [' c. o
FreeLibrary(syss);
, F7 G" C' [; \9 |* ^9 c
/ P2 `% ^& m6 g5 n6 l
% a! q; k7 N# h+ ~) j2 x2 h
}
复制代码
: o6 A0 J% X H; {1 F
0 ]# v7 L1 J) @$ F9 ]
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
浏览过的版块
自主工业软件开发
在本版发帖
关注公众号
QQ客服
返回顶部
快速回复
返回顶部
返回列表