【PLM之家-NX9.0二次开发实例视频】14 UIStyler生成C代码创建block
【PLM之家-NX9.0二次开发实例视频】14 UIStyler生成C代码创建block内容:通过使用uistyler界面进行block创建目的:熟悉uistyler界面的使用和C code生成
使用uistyler,NX6.0之前的老的UI,进行block的界面创建,并生成C语言的代码,通过代码模版进行block特征的创建!
此处使用ufun的创建block函数进行创建!
关键代码分享:
{
/* Make sure User Function is available. */
tag_t block_tag=NULL_TAG;
double lengthValue,widthValue,heightValue;
UF_STYLER_item_value_type_t length,width,height;
char*edge={NULL};
int error = 0;
double corner ={100.0,100.0,100.0};
if ( UF_initialize() != 0)
return ( UF_UI_CB_CONTINUE_DIALOG );
/* ---- Enter your callback code here ----- */
length.item_id=PLMHOME_LENGTH;
length.item_attr=UF_STYLER_VALUE;
UF_STYLER_ask_value(dialog_id,&length);
lengthValue = length.value.real;
width.item_id=PLMHOME_WIDTH;
width.item_attr=UF_STYLER_VALUE;
UF_STYLER_ask_value(dialog_id,&width);
widthValue = width.value.real;
height.item_id=PLMHOME_HEIGHT;
height.item_attr=UF_STYLER_VALUE;
UF_STYLER_ask_value(dialog_id,&height);
heightValue = height.value.real;
//covert value to char *
edge = (char *)(UF_allocate_memory(256*sizeof(char *),&error));
edge = (char *)(UF_allocate_memory(256*sizeof(char *),&error));
edge = (char *)(UF_allocate_memory(256*sizeof(char *),&error));
sprintf(edge,"%f",lengthValue);
sprintf(edge,"%f",widthValue);
sprintf(edge,"%f",heightValue);
UF_MODL_create_block1(UF_NULLSIGN,corner,edge,&block_tag);
UF_free(edge);
UF_free(edge);
UF_free(edge);
UF_terminate ();
/* Callback acknowledged, terminate dialog */
/* It is STRONGLY recommended that you exit your */
/* callback with UF_UI_CB_EXIT_DIALOG in a ok callback.*/
/* return ( UF_UI_CB_EXIT_DIALOG ); */
return (UF_UI_CB_EXIT_DIALOG);
}
高清视频见楼下:
PLM之家NX9.0二次开发视频教程14 使用uistyler和C创建block
http://player.youku.com/player.php/sid/XMzA4MTU3MDMyMA==/v.swf
赠人玫瑰,手有余香 :)谢谢高手的分享 感谢分享思密达! 谢谢高手的分享:) 我看看看男科 好东西啊阿布 我在学,谢谢 感谢楼主分享,谢谢了