马上注册登录,享用更多网站功能!
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
小弟我也做二次开发,碰到了一个相。。。当头疼的问题,问题如下:
我的思路是这样的
在app.cpp里面的Application函数中,先用UF_UI_select_with_single_dialog选择一个面,
然后通过相关函数获得了一些所选择面的数据,然后又从这些数据计算出一个值,
定义为 double sphere_diam(球的直径),这时候,我想调用一个ug对话框(已建成),
询问用户是否需要对这个值做出更改,并把sphere_diam(球的直径)的值做为对话框中
实数输入栏的初始值,该怎么做啊??
UF_STYLER_create_dialog函数也在app.cpp里面的Application函数中,
它的回调函数我放在了ask_diam.cpp中。
int ask_diam_const_cb ( int dialog_id,
void * client_data,
UF_STYLER_item_value_type_p_t callback_data)
{
if ( UF_initialize() != 0)
return ( UF_UI_CB_CONTINUE_DIALOG );
UF_STYLER_item_value_type_t set_data;
set_data.item_attr=UF_STYLER_VALUE;
set_data.item_id=HOLE_ASK_DIAM;
set_data.value.real=sphere_diam; //SPHERE_DIAM在这里!!
UF_CALL(UF_STYLER_set_value(dialog_id,&set_data));
char set_data_check[133];
sprintf(set_data_check,"select set value is:%f\nsphere_diam=%f",
set_data.value.real,sphere_diam);
MessageBox(NULL,set_data_check,
"set_value",MB_OK|MB_ICONWARNING|MB_SYSTEMMODAL);
UF_terminate ();
return (UF_UI_CB_CONTINUE_DIALOG);
}
请看上面的代码,我本想在construction回调函数中将sphere_diam的值赋给set_data.value.real,
可是在ask_diam.cpp中是根本就不认sphere_diam的,就是说它没有定义,
编译提示错误:error C2065: sphere_diam : undeclared identifier
请问各位大侠:我应该怎么样,在什么地方定义sphere_diam,才可以即能在app.cpp中修改它的值,
并且在ask_diam.cpp中可以正确的调用它的值啊??????????
ToT
救命啊。。。 |