![Siemens NX二次开发](https://wfqqreader-1252317822.image.myqcloud.com/cover/979/41202979/b_41202979.jpg)
3.3 重用内部UI Block
当开发者看到NX界面中有理想的UI,但Block UI Styler模块中没有对应的UI Block时,可以考虑重用内部UI Block。
进入Drafting(制图)模块,单击“Menu”→“Insert”→“Symbol”→“Define Custom Symbol”按钮,打开如图3-5所示的Define Custom Symbol对话框。
![](https://epubservercos.yuewen.com/A6F99C/21440188008281206/epubprivate/OEBPS/Images/32757_34_2.jpg?sign=1739374299-RsmTrTo0xzjlAjuUTtXZgHC6F4EljRgX-0-a9a14092b979ff5cc6f584d5631e93c0)
图3-5 Define Custom Symbol对话框
在这个对话框中,如果开发者想重用“Image Capture”这一部分的UI Block,可以按以下步骤操作:
(1)添加环境变量“UGII_DISPLAY_DEBUG=1”,并重启NX。添加这个环境变量的目的是让用户可以启用NX的DEBUG工具。
(2)重新进入Drafting模块,单击“Menu”→“Insert”→“Symbol”→“Define Custom Symbol”按钮。
(3)再单击“Menu”→“Help”→“Debug”→“UIFW Spy”按钮,打开如图3-6所示的Dialog Spy对话框,不难看出“Image Capture”对应UI Block调用类“UGS::UI::Comp::ImageCapture”。
![](https://epubservercos.yuewen.com/A6F99C/21440188008281206/epubprivate/OEBPS/Images/32757_35_1.jpg?sign=1739374299-z2yAo1pYooNvqaFwGjU1wMNFskrXrnuP-0-fbce69fd37f8501086c5bc0e1c3e5850)
图3-6 Dialog Spy对话框及显示结果
(4)去掉“%UGII_BASE_DIR%\UGII\menus\styler_blocks.pax”文件的只读属性,用文本编辑器(如记事本)打开它,添加以下代码(如果使用的是简体中文版NX,需要更改“styler_blocks_simpl_chinese.pax”文件)。
![](https://epubservercos.yuewen.com/A6F99C/21440188008281206/epubprivate/OEBPS/Images/32757_35_2.jpg?sign=1739374299-YfVFFY7Ghlep1RRw5zsxqGEds38QFaNB-0-d5b873cee7a6cc61b5a8b5f946851f9e)
(5)再次进入NX的Block UI Styler模块,就可以看到Block列表多出了添加的内部UI Block,单击它就可以看到预览效果,如图3-7所示。
![](https://epubservercos.yuewen.com/A6F99C/21440188008281206/epubprivate/OEBPS/Images/32757_36_1.jpg?sign=1739374299-JYzHS7yC7NGXTrWsdr6M39B2t7g3RYQz-0-17115226fca78c6ee602bd5e8381e21b)
图3-7 重用内部UI Block显示结果