青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 2015|回复: 0

[疑难] 对话框回调函数问题

[复制链接]
发表于 2012-2-29 17:01 | 显示全部楼层 |阅读模式
本帖最后由 ahlarry 于 2012-2-29 17:02 编辑 3 C% w9 P( C% m) f2 @
  1. //------------------------------------------------------------------------------
    * ^* j3 W7 K( s8 l
  2. // This method is required for UI styler dialog creation
    & g9 s; A. l$ \# J1 n' v. ?
  3. //------------------------------------------------------------------------------+ e( c+ U3 F: J+ N) g
  4. void TriNX::InitializeUIStylerDialog(), l8 o, n* Q3 n9 W6 g% ~
  5. {
    % z2 W/ I9 j- Q  J' _
  6. try
    . C$ `9 w8 y2 B( A; O  p
  7. {
    6 O* F0 k0 t9 L- K
  8. 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
  9. changeDialog->AddApplyHandler(make_callback(this, &TriNX::apply_cb), false);6 B% I; n# V0 y1 j
  10. changeRadio1 = (NXOpen::UIStyler::RadioBox*)theDialog->GetStylerItem("RADIO_1", NXOpen::UIStyler::Dialog::ItemTypeRadioBox);
    2 G/ E/ l* j  u% F
  11. changeRadio1->AddValueChangedHandler(make_callback(this, &TriNX::Radio_cb), false);
    ( E8 I( S/ q0 |! B# U% H
  12. }
    - J5 q, A' h. A( ?# P3 A! x
  13. catch (const NXOpen::NXException& ex)
    ) f+ j4 U  ^* g, {- r
  14. {
    6 v7 W3 d& x. w6 d
  15. // ---- Enter your exception handling code here -----
    2 X: u/ z4 j1 V9 ^6 m1 s
  16. theUI->NXMessageBox()->Show("UI Styler", NXOpen::NXMessageBox::DialogTypeError, ex.Message());! G2 ~4 d2 h  U/ j
  17. }6 N0 |. w) O* I( X% o9 H, |: Q
  18. return;
    % a8 |7 h7 b: Z4 T6 ~9 N% `3 I
  19. }2 W' |/ J2 D2 R) ?' \# r& [
  20. .......................................
    8 y) [* i6 Z& a2 k
  21. //------------------------------------------------------------------------------
    " y; p1 D) @* [( d0 `% C
  22. // Callback Name: Radio_cb
    ( s$ H+ d0 O- f; I2 E8 @
  23. // Following callback is associated with the "changeRadio1" Styler item.7 ?- s6 E  b5 X. ]2 d
  24. // Input: eventObject - object of UIStyler.StylerEvent class
    2 a; ]8 N9 ^4 f* r: V% U
  25. //------------------------------------------------------------------------------
    5 E1 L+ h* M& g6 L2 V
  26. NXOpen::UIStyler::DialogState TriNX::Radio_cb(NXOpen::UIStyler::StylerEvent* eventObject)& M% e3 U; N/ ~7 F! ?
  27. {; f3 O& g/ S; J
  28. try
    8 H, C4 x2 w' Y9 y) p5 `
  29. {
    2 J1 \+ W3 p5 ]# f: S

  30. & h# D7 ]% w! ]4 F* O
  31. 4 p: }+ k+ _& A5 _: B3 j5 L
  32. // ---- Enter your callback code here -----2 e& [  A9 {! r. Z# ~8 I$ u
  33. UF_STYLER_item_value_type_t value;& s7 y. G# {* _+ v$ W
  34. value.item_attr=UF_STYLER_VALUE;
    - z* o& v/ X0 S/ q* E; [+ K7 X( |
  35. value.item_id="RADIO_1";
    8 Y5 z% t- h( g/ t( a$ ^
  36. UF_STYLER_ask_value(dialog_id,&value);) m4 Z; T: Y5 ~1 ?; U7 ?+ e
  37. int iSelected=value.value.integer;! a+ }7 o% O4 \: {0 E% \3 l) p
  38. }7 ?; ?1 H. b" N( d  t& P
  39. catch (const NXOpen::NXException& ex)
    ' J7 o0 J5 r  e
  40. {) n7 n9 ?& `2 p' L3 C  V
  41. // ---- Enter your exception handling code here -----$ M+ S; P* q  C2 @4 g
  42. theUI->NXMessageBox()->Show("UI Styler", NXOpen::NXMessageBox::DialogTypeError, ex.Message());! v" [9 M" m* T
  43. }' {5 K) o! ?# M: _# U
  44. // Callback acknowledged, do not terminate dialog0 Z# k# }1 _) r) v
  45. return NXOpen::UIStyler::DialogStateContinueDialog;- s, W# Q" ~5 h& M
  46. // or Callback acknowledged, terminate dialog.
    3 E6 e7 ^4 b' {; P" Z0 ^
  47. // return NXOpen::UIStyler::DialogStateExitDialog;
    ) W; y. Y6 q2 M) @" r
  48. }  E& ]/ M  d* w7 S# ^9 X% l2 J
复制代码

0 [' ?! [8 `; R8 O6 F7 s第20行省略了些跟此问题无关的代码,生成时显示 “error C2065: “dialog_id”: 未声明的标识符”,如何修改?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2025-9-19 04:59 , Processed in 0.045929 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表