|
本帖最后由 ahlarry 于 2012-2-29 17:02 编辑 3 C% w9 P( C% m) f2 @
- //------------------------------------------------------------------------------
* ^* j3 W7 K( s8 l - // This method is required for UI styler dialog creation
& g9 s; A. l$ \# J1 n' v. ? - //------------------------------------------------------------------------------+ e( c+ U3 F: J+ N) g
- void TriNX::InitializeUIStylerDialog(), l8 o, n* Q3 n9 W6 g% ~
- {
% z2 W/ I9 j- Q J' _ - try
. C$ `9 w8 y2 B( A; O p - {
6 O* F0 k0 t9 L- K - changeDialog = (NXOpen::UIStyler::DialogItem*)theDialog->GetStylerItem("UF_STYLER_DIALOG_INDEX", NXOpen::UIStyler::Dialog::ItemTypeDialogItem);
6 Z" U' ~0 k1 S4 i q& n* D5 w - changeDialog->AddApplyHandler(make_callback(this, &TriNX::apply_cb), false);6 B% I; n# V0 y1 j
- changeRadio1 = (NXOpen::UIStyler::RadioBox*)theDialog->GetStylerItem("RADIO_1", NXOpen::UIStyler::Dialog::ItemTypeRadioBox);
2 G/ E/ l* j u% F - changeRadio1->AddValueChangedHandler(make_callback(this, &TriNX::Radio_cb), false);
( E8 I( S/ q0 |! B# U% H - }
- J5 q, A' h. A( ?# P3 A! x - catch (const NXOpen::NXException& ex)
) f+ j4 U ^* g, {- r - {
6 v7 W3 d& x. w6 d - // ---- Enter your exception handling code here -----
2 X: u/ z4 j1 V9 ^6 m1 s - theUI->NXMessageBox()->Show("UI Styler", NXOpen::NXMessageBox::DialogTypeError, ex.Message());! G2 ~4 d2 h U/ j
- }6 N0 |. w) O* I( X% o9 H, |: Q
- return;
% a8 |7 h7 b: Z4 T6 ~9 N% `3 I - }2 W' |/ J2 D2 R) ?' \# r& [
- .......................................
8 y) [* i6 Z& a2 k - //------------------------------------------------------------------------------
" y; p1 D) @* [( d0 `% C - // Callback Name: Radio_cb
( s$ H+ d0 O- f; I2 E8 @ - // Following callback is associated with the "changeRadio1" Styler item.7 ?- s6 E b5 X. ]2 d
- // Input: eventObject - object of UIStyler.StylerEvent class
2 a; ]8 N9 ^4 f* r: V% U - //------------------------------------------------------------------------------
5 E1 L+ h* M& g6 L2 V - NXOpen::UIStyler::DialogState TriNX::Radio_cb(NXOpen::UIStyler::StylerEvent* eventObject)& M% e3 U; N/ ~7 F! ?
- {; f3 O& g/ S; J
- try
8 H, C4 x2 w' Y9 y) p5 ` - {
2 J1 \+ W3 p5 ]# f: S
& h# D7 ]% w! ]4 F* O- 4 p: }+ k+ _& A5 _: B3 j5 L
- // ---- Enter your callback code here -----2 e& [ A9 {! r. Z# ~8 I$ u
- UF_STYLER_item_value_type_t value;& s7 y. G# {* _+ v$ W
- value.item_attr=UF_STYLER_VALUE;
- z* o& v/ X0 S/ q* E; [+ K7 X( | - value.item_id="RADIO_1";
8 Y5 z% t- h( g/ t( a$ ^ - UF_STYLER_ask_value(dialog_id,&value);) m4 Z; T: Y5 ~1 ?; U7 ?+ e
- int iSelected=value.value.integer;! a+ }7 o% O4 \: {0 E% \3 l) p
- }7 ?; ?1 H. b" N( d t& P
- catch (const NXOpen::NXException& ex)
' J7 o0 J5 r e - {) n7 n9 ?& `2 p' L3 C V
- // ---- Enter your exception handling code here -----$ M+ S; P* q C2 @4 g
- theUI->NXMessageBox()->Show("UI Styler", NXOpen::NXMessageBox::DialogTypeError, ex.Message());! v" [9 M" m* T
- }' {5 K) o! ?# M: _# U
- // Callback acknowledged, do not terminate dialog0 Z# k# }1 _) r) v
- return NXOpen::UIStyler::DialogStateContinueDialog;- s, W# Q" ~5 h& M
- // or Callback acknowledged, terminate dialog.
3 E6 e7 ^4 b' {; P" Z0 ^ - // return NXOpen::UIStyler::DialogStateExitDialog;
) W; y. Y6 q2 M) @" r - } E& ]/ M d* w7 S# ^9 X% l2 J
复制代码
0 [' ?! [8 `; R8 O6 F7 s第20行省略了些跟此问题无关的代码,生成时显示 “error C2065: “dialog_id”: 未声明的标识符”,如何修改? |
|