|
程序的目的是通过对话框给工作部件添加一个文件属性。编译时提示错在红色部份那里。不知错在哪里,请高人指点。% ?3 s# C. O: U( C% p( U% V6 f
错误提示:(error C2440: 'initializing' : cannot convert from '' to 'int (__cdecl *)(int,void *,struct UF_STYLER_item_value_type_s *)'
) Y) W: ?- o2 _: p None of the functions with this name in scope match the target type)- P h( ?+ \& i7 l- a7 m
! l) o1 S0 ~+ h; B4 z/ h下面是程序内容:
. d5 ?7 w3 ~ m! R#include <stdio.h>
) Q4 _. B0 z# g" R0 L#include <uf.h>
7 w0 ^) |" W: _8 m5 W3 C" o#include <uf_defs.h>
6 Y# a& w' U/ u8 ?: `' O6 `#include <uf_exit.h>. e* z. p. W2 C* ~
#include <uf_ui.h>
3 f; D; t7 e) ]9 T#include <uf_styler.h>
+ l9 G. C5 e% i#include <uf_mb.h> : D) ]! s% H7 |
#include <uf_part.h>
. ], m2 @2 l. t+ l8 P1 m7 ]! y#include <uf_modl.h>
+ B* g, a, M" x( x, j- z' _( f% Z#include <uf_attr.h>" _6 S$ r0 z* f; t) f0 R
#include <uf_cfi.h>
; J X2 c* ^8 _2 W/ N#include <uf_assem.h>
# E4 X# j! ]+ ~4 Q+ |1 `: q3 Y0 B& n$ h% y4 q
#define MY_TH ("TH")
; k0 ^. v; |4 e4 ]! X#define MY_DIALOG_OBJECT_COUNT ( 1 )3 q N- _6 Y* v q
$ F6 L+ h6 c9 Y) hint MY_ok_fun(int dialog_id,+ p* Q$ ~2 q$ x2 [5 [ z! F* P
char *client_data,
- v/ j: r( A% }0 H; _ R7 |7 b UF_STYLER_item_value_type_p_t callback_data);' b. y# Y# j5 z
, `* `- s" I" b2 g2 R* F5 v* R2 g# T
int LaunchProDesignDialog( int *response );
9 f) H# [1 f- l. q% w4 n7 _1 @
, I- D; R3 A4 D- A6 y#define MY_CB_COUNT ( 1 + 1 ) /* Add 1 for the terminator */
' j9 d2 E9 o1 J/ Z& \static UF_STYLER_callback_info_t MY_cbs[MY_CB_COUNT] = ( y. x0 z5 O8 |2 E+ W1 Y0 w+ P. A8 v
{) R2 |; R! f4 d" l) U8 v
{UF_STYLER_DIALOG_INDEX, UF_STYLER_OK_CB, 0, MY_ok_fun}, I9 [- v, y* W% d
{UF_STYLER_NULL_OBJECT, UF_STYLER_NO_CB, 0, 0 }3 ?8 b3 L9 J$ B" L3 H0 w4 D
};2 P% k& b% j" i- U- N0 l
( p4 I! U6 o7 i6 Y0 v! n
0 e/ e- x# G4 @0 k- u, K% y# fstatic UF_MB_styler_actions_t actions[] = {/ T' P, y, p. y- _: ]
{ "att.dlg", NULL, MY_cbs, UF_MB_STYLER_IS_NOT_TOP },$ n+ P; ]* H( b0 C! i% W& {' `3 \
{ NULL, NULL, NULL, 0 } /* This is a NULL terminated list */# v7 @8 { u* } z: `+ Z, F" f" d
};2 ?6 b2 I% w) e) Z8 r1 F5 V- Z
& g; _) s7 k8 d+ [$ `
6 {" \4 m. b4 x- w5 [
extern int LaunchProDesignDialog( int *response )# K- q7 q7 V9 V2 ?2 X
{- ]# l6 d+ h# K: \
int error_code = 0;) D' R. x9 n7 i$ T
1 F& I& t8 p0 h) U if ( ( error_code = UF_initialize() ) != 0 )
1 a3 c4 o2 f: r, s; x- b return (0) ;; m6 Y$ r* @# X7 v8 ^( N
if ( ( error_code = UF_STYLER_create_dialog ( "att.dlg",
0 K, U+ _$ C+ Y. p" Y* Q0 K+ N. K MY_cbs, /* Callbacks from dialog */
5 \& y: _9 x$ j7 a3 S, b MY_CB_COUNT, /* number of callbacks*/" c+ R- N6 }. X! c/ E& r
NULL, /* This is your client data */
: t3 I3 @2 I9 u/ f2 e4 O" j$ k response ) ) != 0 )
0 H: \) T, j6 j {4 ]) X. D3 F1 g) {* E; L
char fail_message[133];+ H+ x# d, x& r' j2 d
/* Get the user function fail message based on the fail code.*/
6 f; R; B W W5 Y: u UF_get_fail_message(error_code, fail_message);
0 T! J8 q. N1 ]0 y$ t7 [1 i5 J UF_UI_set_status (fail_message);
. J' ?9 y! g" a( I printf ( "%s\n", fail_message ); / C. C$ K- i0 {, F1 h
}
* [" D2 B: p: ~, p2 e# r1 P5 D UF_terminate(); 9 m+ Y% M$ Y3 I0 |
return (error_code);
2 m- E4 u( L& O}
9 y( m. ~* ]2 D : Q0 s( d: p- V+ k9 d3 F0 ?
6 t. D0 z' V4 Q+ }
int MY_ok_fun(int dialog_id,5 y5 v& k8 a8 x3 s0 w! p& [
char *client_data,& u; Q+ V u/ k6 B
UF_STYLER_item_value_type_p_t callback_data): b: o: Y2 | U: |7 d. K
{
" P4 s# v8 c7 r! N" F / L4 k6 i3 s1 _9 q. D
UF_STYLER_item_value_type_t data;$ q$ J8 @, Z% t! A1 h0 l
UF_ATTR_value_t value;9 x; {& e$ B, Y+ D/ G; _
0 A \ k8 U( _. Y5 S % O# c4 L( L2 P" q7 Y1 J
if ( UF_initialize() != 0)
2 A# V9 D+ a q W9 F! T& v return ( UF_UI_CB_CONTINUE_DIALOG );+ ]9 J( v4 J& `. `
data.item_attr=UF_STYLER_VALUE;
( R: F( l/ h# ?4 } data.item_id=MY_TH;
# d7 F3 }5 z, K7 } UF_STYLER_ask_value(dialog_id,&data);
, b1 ^: d+ X7 F& Q6 z; J value.type=UF_ATTR_string;
5 B3 G6 |7 |1 F7 n value.value.string=data.value.string;
3 q* ]; T% ?# Y/ H* r" ^% V
. e+ X+ W/ M! D9 L0 t! ^2 b, h& S UF_ATTR_assign(UF_ASSEM_ask_work_part (), "图号", value);
& S% N* L% M9 L1 ?3 N UF_terminate ();6 K% l# J' t9 {$ X b- u: }6 f
return (UF_UI_CB_CONTINUE_DIALOG);
$ U$ H+ ? y0 Z8 n. w4 Z; g0 R* u return (UF_UI_CB_EXIT_DIALOG);- l/ N- u5 r* G1 u: p
} |
|