|
本帖最后由 ahlarry 于 2012-2-29 17:02 编辑 * Q( B$ }% k6 |! D) i) S
- //------------------------------------------------------------------------------& n- j. J3 y) F1 ^
- // This method is required for UI styler dialog creation) `8 l5 K. b6 f1 ?. [ t
- //------------------------------------------------------------------------------
) M8 N+ a* P1 I' A& r9 {4 `/ v - void TriNX::InitializeUIStylerDialog()
; X I! H# Y1 n' r2 j0 s) c - {$ t# m% N+ |+ R% P6 V
- try
4 P2 j* @% S+ H" G+ ]+ i - {
& a( N$ q1 u* {; @ - changeDialog = (NXOpen::UIStyler::DialogItem*)theDialog->GetStylerItem("UF_STYLER_DIALOG_INDEX", NXOpen::UIStyler::Dialog::ItemTypeDialogItem);
% k0 G4 G' ]% D4 r5 ?! J - changeDialog->AddApplyHandler(make_callback(this, &TriNX::apply_cb), false);
! t& \& |" v g z" x& a0 Q - changeRadio1 = (NXOpen::UIStyler::RadioBox*)theDialog->GetStylerItem("RADIO_1", NXOpen::UIStyler::Dialog::ItemTypeRadioBox);: E" r* y# Y% {1 t% H
- changeRadio1->AddValueChangedHandler(make_callback(this, &TriNX::Radio_cb), false);) t8 D3 M! U0 A
- }1 d4 I4 O0 Q+ Z4 |$ v- I
- catch (const NXOpen::NXException& ex)9 q! n0 ]8 T, X6 @ ]
- {
; Y: b6 [0 y5 @$ z2 ? - // ---- Enter your exception handling code here -----
1 S% x. g- c* r - theUI->NXMessageBox()->Show("UI Styler", NXOpen::NXMessageBox::DialogTypeError, ex.Message());
, A; Z8 ^$ P& T& C- K6 C" v' c - }/ F. I7 w1 }, X& I+ ]6 z9 y2 j
- return;+ O2 k6 Z. H! S! @. D5 k
- }, M8 d/ z1 g8 q: d# I% N
- .......................................# X: e- l" }4 p' l( M0 c) i+ q
- //------------------------------------------------------------------------------4 c/ Q- b. g; H5 g
- // Callback Name: Radio_cb5 ~: ]) t* g) ]% C4 H; H! w7 p
- // Following callback is associated with the "changeRadio1" Styler item.. Q+ C- ]3 C( t
- // Input: eventObject - object of UIStyler.StylerEvent class- D1 z* T& b% o Z# G$ l1 Y
- //------------------------------------------------------------------------------. |* Y5 e( _1 H. T6 ^' p
- NXOpen::UIStyler::DialogState TriNX::Radio_cb(NXOpen::UIStyler::StylerEvent* eventObject); ?* s3 j5 O! |: ]! A
- {' x. U2 N* y! ?7 p0 s. Z
- try
0 \9 ^0 o3 {$ h( B( v - {
$ z9 B- A4 Z: c0 {' P6 \+ q/ B2 K
% n% @8 v0 O' [$ U% [- % Y4 n* Y7 A' Y7 p- U
- // ---- Enter your callback code here -----# |2 b8 G5 R! _" e
- UF_STYLER_item_value_type_t value;
, l7 P2 G% }+ |+ ~: t& w7 |9 z - value.item_attr=UF_STYLER_VALUE;
+ p* _( T- G) c - value.item_id="RADIO_1";' M2 _/ P- w* l. y
- UF_STYLER_ask_value(dialog_id,&value);
* J/ y+ `4 X& U( x - int iSelected=value.value.integer;
/ I7 u; M' B/ z9 ]* g7 g: g - }3 v. q# f$ @; D/ Z; C, S9 V6 O
- catch (const NXOpen::NXException& ex)
! E5 D9 z4 v# |3 b - {$ v; @/ W2 a, u( V* t- L+ Z( Z) G
- // ---- Enter your exception handling code here -----
x: x- E0 X! b4 `6 L6 D - theUI->NXMessageBox()->Show("UI Styler", NXOpen::NXMessageBox::DialogTypeError, ex.Message());
1 v; V X# Z/ w( M5 w( z - }
$ q$ \9 v) L) A$ s1 K - // Callback acknowledged, do not terminate dialog
1 `- K& v% a0 X4 o9 g/ ^6 v - return NXOpen::UIStyler::DialogStateContinueDialog;
, R$ r X) @3 o* [$ S! @ - // or Callback acknowledged, terminate dialog.
7 n2 J3 _4 u% p, k' W5 N9 r- H( e - // return NXOpen::UIStyler::DialogStateExitDialog;
! P! k0 @3 C$ w, M* D - }! O& x8 y/ x( Y$ n) K
复制代码 ' P* w5 ]5 P ~" U) Q; S9 r
第20行省略了些跟此问题无关的代码,生成时显示 “error C2065: “dialog_id”: 未声明的标识符”,如何修改? |
|