您的位置:首页 > 其它

Pro Engineer 二次开发工程图表格绘制

2011-04-17 20:43 726 查看
int AppendParameterTable(CString *Cparameter_name,CString *Cparameter_value,int ParamNum)

{

//*===================================绘制表格===================*////

double width[PRO_TABLE_MAX_COLS], height[PRO_TABLE_MAX_ROWS];

ProHorzJust justifications[PRO_TABLE_MAX_COLS];

ProDwgtabledata table_data;

ProDrawing drawing;

ProPoint3d origin;

ProDwgtable table;

ProMouseButton btn;

ProFileName InfoFile;

int i;

//指定输入和显示的信息文件名

ProStringToWstring (InfoFile,"Info.txt");

//表格的位置设置

origin[0]=300;

origin[1]=700;

origin[2]=0;

//获得当前工程图的句柄

ProMdlCurrentGet((ProMdl*)&drawing);

ProDwgtabledataAlloc(&table_data);

ProDwgtabledataOriginSet(table_data, origin);

for (i=0; i<3; i++) justifications[i] = PROHORZJUST_LEFT;

for (i=0; i<3; i++) width[i]=20;

ProDwgtabledataColumnsSet(table_data, 3, width, justifications);

for (i=0; i<ParamNum+5; i++) height[i]=2;

ProDwgtabledataRowsSet(table_data, ParamNum+5, height);

ProDwgtabledataSizetypeSet(table_data, PRODWGTABLESIZE_CHARACTERS);

//ProDwgtabledataSizetypeSet(table_data,PRODWGTABLESIZE_SCREEN);

ProDrawingTableCreate(drawing, table_data, 0, &table);

ProDwgtableDisplay(&table);

//==========填充表格===========//

ProWstring *lines;

ProCharLine strtmp;

//分配内存

ProArrayAlloc (1, sizeof(wchar_t *),1,(ProArray*)&lines);

lines[0] = (wchar_t *)calloc(PRO_COMMENT_SIZE, sizeof(wchar_t));

strcpy(strtmp,"参数名");

ProStringToWstring(lines[0],strtmp);

ProDwgtableTextEnter(&table,1,1,lines);

strcpy(strtmp,"参数值");

ProStringToWstring(lines[0],strtmp);

ProDwgtableTextEnter(&table,2,1,lines);

strcpy(strtmp,"参数说明");

ProStringToWstring(lines[0],strtmp);

ProDwgtableTextEnter(&table,3,1,lines);

for(int m=0;m<ParamNum;m++)//将参数信息添入表格

{

lstrcpy(lines[0],Cparameter_name[m]);

ProDwgtableTextEnter(&table,1,m+2,lines);//参数名

lstrcpy(lines[0],(LPWSTR)"&");

lstrcat(lines[0],Cparameter_name[m]);

ProDwgtableTextEnter(&table,2,m+2,lines);//参数值

lstrcpy(lines[0],Cparameter_meaning[m]);

ProDwgtableTextEnter(&table,3,m+2,lines);//参数含义

}

ProArrayFree( (ProArray*)&lines);

ProMessageDisplay(InfoFile, "table creation complete.");

return TRUE;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐