NX二次开发- BlockUI在Update回调中关闭对话框

适用版本:NX 6.0 及以上版本

一、概述

UG NX二次开发的框架一般分为四大组成部分,工具条、对话框、应用程序和库函数,其中工具条和对话框属于UI部分,也就是人机交互界面;应用程序和库函数属于逻辑部分,对应一些鼠标点击事件,以及处理函数。其中的对话框的功能就是完成人机交互功能的核心部分,它实现参数输入等功能,在UG功能开发中的地位非常重要。UG NX的对话框有两种类型,一种是NX 6.0之前的老式UI,即UI Styler;还有一种是NX6.0以后的新版UI,即BLOCK UI Styler。

二、功能说明

        我们在运行BlockUI对话框时,有时需要在Update回调里面当满足某种条件之后关闭对话框,NXOpen里没有相关的函数可以实现,这个时候,这时就只能想到NX的内部函数了,通过分析查找得到相关函数如下:

通过进一步的逐个函数分析,得到函数的具体用法,并封装成C#常用的扩展函数:

序号

函数名称

输入

输出

备注

1

ask_framework

(IntPtr uicomp)

IntPtr

通过对话框获取UI框架

2

ask_command

(IntPtr framework)

IntPtr

通过框架获取命令

3

end_dialog

(IntPtr framework, IntPtr command, int area)

int

关闭对话框

/// <summary>
/// 结束对话框
/// </summary>
/// <param name="blockDialog"></param>
public static void EndDialog(this  BlockDialog blockDialog)
{
   var topBlock = Lookup(blockDialog.TopBlock.Tag);
   var framework = ask_framework(topBlock);
   var command = ask_command(framework);
   end_dialog(framework, command, 2);
}

当需要关闭对话框时,只需要使用“theDialog.EndDialog();”一行代码,即可实现点击下图所示按钮立即关闭对话框。

三、总结

      这样封装成基础库可以重复调用,不容易出现BUG,也便于阅读和调试。

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
NX二次开发,指定选择平面对话框选项可以通过以下步骤实现。首先,需要使用NX Open API对话框类(例如UF_UI)来创建平面对话框。然后,可以使用该对话框的方法和属性来指定选择平面对话框的选项。 首先,需要创建一个对话框,并定义需要显示的选项和控件。可以使用对话框的方法来添加按钮、文本框、下拉列表等控件,并将它们布局在对话框。然后,需要设置这些控件的属性,例如名称、提示信息、初始值等。这样就可以定制化对话框的选项。 接下来,可以使用对话框的事件处理方法来处理用户的操作。例如,当用户点击按钮或选择下拉列表时,可以编写相应的事件处理程序来响应用户的操作。在事件处理程序,可以获取用户的选择并根据需要进行后续操作。 除了在对话框指定选择平面的选项,还可以通过编程的方式来获取和设置平面的属性。例如,可以使用NX Open API的几何建模类(例如UF_MODL)来获取或设置平面的位置、方向、尺寸等属性。这样就可以实现对平面的定位和编辑操作。 总的来说,在NX二次开发,指定选择平面对话框选项需要通过创建对话框、设置控件属性、编写事件处理程序等步骤来实现。同时,还可以通过编程的方式获取和设置平面的属性,实现更加灵活和定制化的操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值