|
程序的目的是通过对话框给工作部件添加一个文件属性。编译时提示错在红色部份那里。不知错在哪里,请高人指点。
: |: `6 s+ U$ L7 {3 b+ {0 v: D; s4 L错误提示:(error C2440: 'initializing' : cannot convert from '' to 'int (__cdecl *)(int,void *,struct UF_STYLER_item_value_type_s *)'
1 o H6 x" }; b None of the functions with this name in scope match the target type)! w$ w* s5 w; L$ N
B% t C# _# y
下面是程序内容:
2 U# ^# q8 _( L# K# v9 o#include <stdio.h>
: i) o9 ^5 n) m+ K' x7 q# M#include <uf.h>
/ x/ G. i" ?+ N2 y, M#include <uf_defs.h>
5 Y4 [" \' C' _: w6 W" y" H. k#include <uf_exit.h>
( x3 u5 F9 o" q( O( g; s; D* r#include <uf_ui.h> Q- g4 L3 e2 Y, J4 ^) h
#include <uf_styler.h># G0 P* R9 ]1 W# |8 X: d# K7 H& T
#include <uf_mb.h> ; A8 f% U% k+ L5 @. D
#include <uf_part.h>( l: k, y% g" v$ d3 t& `1 ]
#include <uf_modl.h>' V( p: v( @5 P, o" N' T
#include <uf_attr.h>: }7 z: l/ ]" e: `5 A
#include <uf_cfi.h>
A( S+ `. U9 M#include <uf_assem.h>1 J# x1 w, l7 v& G W2 d+ ^
: |/ J I* X' f" E; w5 ^1 l0 S#define MY_TH ("TH")
' N. p( Z7 e. H6 [#define MY_DIALOG_OBJECT_COUNT ( 1 )
) j' I- h6 k3 P) [/ Q
# U3 S) ]0 m* u. fint MY_ok_fun(int dialog_id,
8 ]4 T2 V) G7 h2 ^5 e4 o+ @ r! J char *client_data,
: a+ f# O; W- n# {# X: t UF_STYLER_item_value_type_p_t callback_data);
) y6 ]3 \# r0 P5 \
) Z4 s6 r' s) O int LaunchProDesignDialog( int *response );
/ \5 s7 o2 m, {, _' b( w; c* m. N' E
#define MY_CB_COUNT ( 1 + 1 ) /* Add 1 for the terminator */
6 M4 S% A1 C$ C" \. R1 e' f8 ostatic UF_STYLER_callback_info_t MY_cbs[MY_CB_COUNT] = 4 e( H- s1 L: Y- T2 C
{
7 A2 ` f& r0 w {UF_STYLER_DIALOG_INDEX, UF_STYLER_OK_CB, 0, MY_ok_fun}, - F- ]& ] V( b+ o7 a2 U( N: I+ E
{UF_STYLER_NULL_OBJECT, UF_STYLER_NO_CB, 0, 0 }
6 l* d* g: Y: V" I% S};% i# Z4 L' j1 _
6 N( v: Q! P: |! V
9 P3 F9 r- E0 estatic UF_MB_styler_actions_t actions[] = {5 s/ Q1 O' c$ l9 K5 l
{ "att.dlg", NULL, MY_cbs, UF_MB_STYLER_IS_NOT_TOP },
% \* I5 U, H5 w# z7 P8 a0 c; x { NULL, NULL, NULL, 0 } /* This is a NULL terminated list */
) J5 E( @9 K$ X! S! h};, v4 ~0 Z# Q- Q( ^5 b, z( d- ?& Z
( f% P( v ?2 i7 {7 z5 e4 P. W
" g. v$ Z' ^: kextern int LaunchProDesignDialog( int *response )
4 C: d, a9 h$ [{; o5 d s' D) I# }( d6 ~: C0 G8 g% {! B
int error_code = 0;
. j+ W$ l* n2 \ [4 [ 9 ]7 [5 O- C2 Z1 C3 d! ^, `
if ( ( error_code = UF_initialize() ) != 0 ) $ O+ F8 R; X6 S. s1 S8 i
return (0) ;- S" ?" B6 \/ H% s; M& M" _
if ( ( error_code = UF_STYLER_create_dialog ( "att.dlg",
8 s1 H) {8 m. p+ R MY_cbs, /* Callbacks from dialog */9 z" \) s# s+ r9 Z
MY_CB_COUNT, /* number of callbacks*/
# Z, a7 f! o# c! _ NULL, /* This is your client data */0 g [9 B5 o# Y$ J8 I
response ) ) != 0 )
# k% w4 H( q/ {( q' R4 {$ h0 ] {* ?$ X, p! q6 X% m8 [
char fail_message[133];
) R" m5 {9 l: G- K5 f& u8 b /* Get the user function fail message based on the fail code.*// Q3 D' U& Z! Z7 u" j' M
UF_get_fail_message(error_code, fail_message);
% G( b6 L- x# V UF_UI_set_status (fail_message);: Y6 o- \2 E! K
printf ( "%s\n", fail_message );
+ _/ t& `5 H, K, y& D}
$ z* N; U) h" o+ Z& H' H# s UF_terminate();
0 H7 ^1 h4 j. V* e, D X( \( w# L return (error_code);
# T7 c2 u' D; @* @/ T) c# F3 W2 d4 x}( X- P ^( n5 m" Q- {* \/ w/ K/ Y' E
- Y1 \+ T' h4 s7 G7 G
, `! _% J' ]! _) A' {3 N" o9 [+ X2 V5 ~ int MY_ok_fun(int dialog_id,
! D2 Y( q2 L/ X" F" [( D# U7 h2 a* l8 o* B! ] char *client_data,' N% F" S+ l6 L/ p @* t4 ?
UF_STYLER_item_value_type_p_t callback_data)* b) }! y& E0 ~
{
1 Y D6 {' A4 d3 ^% m
. b0 S$ F. k, |) ` UF_STYLER_item_value_type_t data;, f1 B# ?9 J/ @% a0 T% |# k* B
UF_ATTR_value_t value;, C+ h$ B# H4 k9 |* C
3 C# m$ O( v$ e! j# `9 L# ~ . W4 u" V8 q3 x( j( b+ K
if ( UF_initialize() != 0)7 W7 |+ a0 p% j( u3 e
return ( UF_UI_CB_CONTINUE_DIALOG );: P2 P, |; s( {8 d
data.item_attr=UF_STYLER_VALUE;
" }2 ?( T$ F( W9 {9 ?( _ data.item_id=MY_TH;
5 B% o" f- [; R$ G" }! l- b& f UF_STYLER_ask_value(dialog_id,&data);
" [, W& I- a* e0 R/ G& B, c' ]% f" c value.type=UF_ATTR_string;9 l6 G7 ^" A6 W2 X4 i+ y
value.value.string=data.value.string;% B/ ]0 w: q! ?+ v
* ~. q1 p/ z# Z- u UF_ATTR_assign(UF_ASSEM_ask_work_part (), "图号", value);
& U5 g! f5 C+ r8 T8 l UF_terminate ();' U$ q6 Q8 ?; s( l" z* O
return (UF_UI_CB_CONTINUE_DIALOG);3 M1 V% v) k/ Y- |
return (UF_UI_CB_EXIT_DIALOG);
+ o- g' @" m- b/ j } |
|