|
本帖最后由 ahlarry 于 2012-2-29 17:02 编辑
+ l# L. q" U0 H: x- //------------------------------------------------------------------------------
# x% F- Z" u0 c1 G6 p5 b7 L4 j - // This method is required for UI styler dialog creation
W$ v0 W: o ^$ {% t - //------------------------------------------------------------------------------; s- F9 @* R. o/ V7 }, k: B
- void TriNX::InitializeUIStylerDialog()
9 n* \0 q! Z9 ]$ g9 q - {
2 E: A G" J, K. L; @ - try
3 F1 k5 F, z8 [! W( o" @3 p) Z- E - {6 S. V/ g( E9 _# F8 l# U" e
- changeDialog = (NXOpen::UIStyler::DialogItem*)theDialog->GetStylerItem("UF_STYLER_DIALOG_INDEX", NXOpen::UIStyler::Dialog::ItemTypeDialogItem);- C i: p7 Y% H( d3 U
- changeDialog->AddApplyHandler(make_callback(this, &TriNX::apply_cb), false);! s, S4 O$ d: B1 G
- changeRadio1 = (NXOpen::UIStyler::RadioBox*)theDialog->GetStylerItem("RADIO_1", NXOpen::UIStyler::Dialog::ItemTypeRadioBox);
( p0 L9 C$ K$ @' b. z) i - changeRadio1->AddValueChangedHandler(make_callback(this, &TriNX::Radio_cb), false);
3 ~. k8 d$ d1 }9 m. d( ~ - }3 y7 ?: [( Y6 w, B1 N
- catch (const NXOpen::NXException& ex)
! H7 E! \- K" z) W0 a* ?" J- e - {, J3 h* K! ^0 |. W/ E
- // ---- Enter your exception handling code here -----
, r7 Z. d/ |5 [* U - theUI->NXMessageBox()->Show("UI Styler", NXOpen::NXMessageBox::DialogTypeError, ex.Message());
5 F8 c/ m) K l - }+ x; |& i: ]" h7 s R5 Z' k' B
- return;
" H/ i2 K6 g* o) E' }9 a: C - }( _3 V( e+ i) u; G% I% T5 K
- .......................................
7 Z- S0 _& d0 e5 b0 m5 ~, u" p - //------------------------------------------------------------------------------
& f" J/ \+ `# C5 H; a - // Callback Name: Radio_cb, `( s& y E# K$ Y
- // Following callback is associated with the "changeRadio1" Styler item.% X1 L* M! f" l# E
- // Input: eventObject - object of UIStyler.StylerEvent class- E' ]* O2 [4 y
- //------------------------------------------------------------------------------6 }* V) U& q+ G- k' o R
- NXOpen::UIStyler::DialogState TriNX::Radio_cb(NXOpen::UIStyler::StylerEvent* eventObject)) R+ s9 J& @! [8 U
- {
4 @4 j2 M- I! D# w$ E, }8 R - try
2 ]( O `+ l! G% i% y/ O* |% a - {
6 l' {: h: E0 G; Z: R: t( N
# K+ B6 ?9 a( g: u
0 N6 P( S& E1 S0 u" X7 }- // ---- Enter your callback code here -----
0 n4 E; C2 F- e" o0 ~ - UF_STYLER_item_value_type_t value;
5 f; {, G b" y/ J0 z/ Y& h - value.item_attr=UF_STYLER_VALUE;/ Z6 Z* J( @7 m; L) a- M
- value.item_id="RADIO_1"; n9 }# Z# B, G. [: j; p7 A
- UF_STYLER_ask_value(dialog_id,&value);
& b2 ~- m9 ?# h5 r - int iSelected=value.value.integer;
- T6 W+ B7 k7 V. p. s - }( |3 J" S& o$ H
- catch (const NXOpen::NXException& ex)$ `7 z& G( n0 R
- {
) E, C8 ^+ K8 N - // ---- Enter your exception handling code here ----- ~/ P- v3 q7 w! K3 z
- theUI->NXMessageBox()->Show("UI Styler", NXOpen::NXMessageBox::DialogTypeError, ex.Message());
/ J- y- ]* V; r% ^( A$ W - }
! w6 y& x( \* a9 g4 { - // Callback acknowledged, do not terminate dialog+ d) @6 |+ d8 f: s9 i* U( H0 X1 k
- return NXOpen::UIStyler::DialogStateContinueDialog;, M. t' D( p0 @7 L
- // or Callback acknowledged, terminate dialog./ z( D' ~( D- v. M- j
- // return NXOpen::UIStyler::DialogStateExitDialog;
. I: U4 u+ {. I" h; H - }
" L# C8 \9 `3 _- h( n$ k) C
复制代码
$ D5 R$ F( ^$ c: v% P: h5 P第20行省略了些跟此问题无关的代码,生成时显示 “error C2065: “dialog_id”: 未声明的标识符”,如何修改? |
|