有时候在激活一个命令按钮的时候,需要同时禁止掉另外一个或多个命令按钮

    ''' <summary>
''' 取按钮是否敏感
''' </summary>
''' <param name="btnName">按钮名称</param>
''' <returns><c>true</c> 如果敏感(没有被屏蔽), <c>false</c> 否则.</returns>
Public Function GetMenuButtonSensitivity(ByVal btnName As String) As Boolean
Dim menuBtn As NXOpen.MenuBar.MenuButton = NXOpen.UI.GetUI().MenuBarManager.GetButtonFromName(btnName)
If menuBtn IsNot Nothing Then
Return menuBtn.ButtonSensitivity = MenuButton.SensitivityStatus.Sensitive
End If
Return False
End Function ''' <summary>
''' 设置按钮敏感状态
''' </summary>
''' <param name="btnName">按钮名称</param>
''' <param name="IsSensitivity">是否敏感(不屏蔽)</param>
Public Sub SetMenuButtonSensitivity(ByVal btnName As String, ByVal IsSensitivity As Boolean)
Dim menuBtn As NXOpen.MenuBar.MenuButton = NXOpen.UI.GetUI().MenuBarManager.GetButtonFromName(btnName)
If menuBtn IsNot Nothing Then
menuBtn.ButtonSensitivity = If(IsSensitivity, MenuButton.SensitivityStatus.Sensitive, MenuButton.SensitivityStatus.Insensitive)
End If
End Sub ''' <summary>
''' 取NX锁定状态
''' </summary>
''' <returns><c>true</c> 如果锁定(屏蔽所有按钮), <c>false</c> 否则.</returns>
Public Function GetNXLockStatus() As Boolean
Return NXOpen.UI.GetUI().AskLockStatus() = NXOpen.UI.Status.Lock
End Function ''' <summary>
''' 设置NX锁定状态
''' </summary>
''' <param name="isLock">如果锁定(屏蔽所有按钮),设置为<c>true</c> .</param>
Public Sub SetNXLockStatus(ByVal isLock As Boolean)
If isLock Then
NXOpen.UI.GetUI().LockAccess()
Else
NXOpen.UI.GetUI().UnlockAccess()
End If
End Sub

VB.NET代码

/// <summary>
/// 取按钮是否敏感
/// </summary>
/// <param name="btnName">按钮名称</param>
/// <returns><c>true</c> 如果敏感(没有被屏蔽), <c>false</c> 否则.</returns>
public bool GetMenuButtonSensitivity(string btnName)
{
NXOpen.MenuBar.MenuButton menuBtn = NXOpen.UI.GetUI().MenuBarManager.GetButtonFromName(btnName);
if (menuBtn != null) {
return menuBtn.ButtonSensitivity == MenuButton.SensitivityStatus.Sensitive;
}
return false;
} /// <summary>
/// 设置按钮敏感状态
/// </summary>
/// <param name="btnName">按钮名称</param>
/// <param name="IsSensitivity">是否敏感(不屏蔽)</param>
public void SetMenuButtonSensitivity(string btnName, bool IsSensitivity)
{
NXOpen.MenuBar.MenuButton menuBtn = NXOpen.UI.GetUI().MenuBarManager.GetButtonFromName(btnName);
if (menuBtn != null) {
menuBtn.ButtonSensitivity = IsSensitivity ? MenuButton.SensitivityStatus.Sensitive : MenuButton.SensitivityStatus.Insensitive;
}
} /// <summary>
/// 取NX锁定状态
/// </summary>
/// <returns><c>true</c> 如果锁定(屏蔽所有按钮), <c>false</c> 否则.</returns>
public bool GetNXLockStatus()
{
return NXOpen.UI.GetUI().AskLockStatus() == NXOpen.UI.Status.Lock;
} /// <summary>
/// 设置NX锁定状态
/// </summary>
/// <param name="isLock">如果锁定(屏蔽所有按钮),设置为<c>true</c> .</param>
public void SetNXLockStatus(bool isLock)
{
if (isLock) {
NXOpen.UI.GetUI().LockAccess();
} else {
NXOpen.UI.GetUI().UnlockAccess();
}
}

C#代码

NX屏蔽窗口的按钮的更多相关文章

  1. 激活NX窗口的按钮

    原理:取得按钮名称以后,通过运行宏文件激活按钮 Imports System.IO Imports System.Runtime.InteropServices Imports NXOpen.Menu ...

  2. window窗口-button(按钮)-dialog(对话框,带按钮)

    描述:一个可拖动的窗口程序,默认情况下窗口自由移动.调整大小.打开关闭! 案例1(普通的窗口): <div class="easyui-window" icon-Cls=&q ...

  3. Python pyQt4/pyQt5 学习笔记1(空白窗口,按钮,控件事件,控件提示,窗体显示到屏幕中间,messagebox)

    PyQt4是用来编写有图形界面程序(GUI applications)的一个工具包.PyQt4作为一个Python模块来使用,它有440个类和超过6000种函数和方法.同时它也是一个可以在几乎所有主流 ...

  4. 【windows 操作系统】什么是窗口?|按钮也是窗口

    起因 在看操作系统消息机制的时候,看到一句化:全局消息队列把消息发送到窗口所在的线程消息队列.突然就怀疑起了窗口的意思.于是就有这边基类. 文章来源:https://docs.microsoft.co ...

  5. 关于wxwidgets图形界面的关闭窗口的按钮无效的解决办法

    这是使用wxsmith设计界面时的情况,如果用纯代码写的界面,关闭按钮就很奇怪地有效 道听途说,窗口的关闭是由一个方法控制着.大概是这样的: void PlainFrame::OnClose(wxCl ...

  6. Lodop窗口的按钮、权限,隐藏或设置功能不可用

    Lodop隐藏某个按钮或部分,具体参考Lodop技术手册 SET_SHOW_MODE篇.以下是几个例子,(对应下图图片): 第一种:LODOP.SET_SHOW_MODE ("HIDE_PB ...

  7. Ubuntu GNOME 13.04将关闭窗口的按钮放在最右边

    转载请注明:转自http://blog.csdn.net/u010811449/article/details/9426187 先上图: 首先打开dconf系统配置编译器. 找到 rog -> ...

  8. Android 屏蔽recent task 按钮

    Step 1 Add this permission to the manifest.xml file <uses-permission android:name="android.p ...

  9. pyqt5 设置窗口按钮等可用与不可用

    setEnabled(True) 设置窗口或者按钮可用,Flase不可用

随机推荐

  1. Python3-sqlalchemy-orm 联表查询-无外键关系

    #-*-coding:utf-8-*- #__author__ = "logan.xu" import sqlalchemy from sqlalchemy import crea ...

  2. C++模板使用

    C++模板 模板是一种对类型进行参数化的工具: 通常有两种形式:函数模板和类模板: 函数模板针对仅参数类型不同的函数: 例如:Max函数 :求两个数的最大值,我们需要对各种数据类型进行重载,如下 in ...

  3. 发布日志 - kratos v2.0.4 版本发布

    V2.0.4 Release Release v2.0.4 · go-kratos/kratos (github.com) 新的功能 proto-gen-http 工具在生产代码时如果 POST/PU ...

  4. QT程序打包成多平台可执行文件

    一.简述 QT项目开发完成后,需要打包发布程序,在实际生产中不可能把源码发给别人,所以需要将源码打包正可执行文件或者安装程序. 二.设置应用图标 把 ico 文件放到源代码目录下,在QT项目中的'.p ...

  5. jvm学习笔记:程序计数器

    程序计数器(PC Register) The Java Virtual Machine can support many threads of execution at once (JLS §17). ...

  6. 在C#中将图像转换为BASE64

    本教程说明如何在C#.NET Windows Forms Application中将图像转换为base64字符串,以及将base64字符串转换为图像.您可以创建一个新的Windows窗体应用程序项目来 ...

  7. 方法重载(Override)

    什么是方法的重写(override 或 overwrite)? 子类继承父类以后,可以对父类中同名同参数的方法,进行覆盖操作. 应用: 重写以后,当创建子类对象以后,通过子类对象调用子父类中的同名同参 ...

  8. Devexpress 饼状图

    <dxc:ChartControl Name="chart"                                BorderThickness="0&q ...

  9. Ansible快速实战指南----多机自动化执行命令、部署神器

                                      1.需求: 需要在多台主机上,发送文件.执行命令,进行快速部署 2.ansible 远程复制文件 例子:在当前节点(20.88.14 ...

  10. Shell系列(38)- 数组操作→取值、遍历、替换、删除

    引言 在Linux平台上工作,我们经常需要使用shell来编写一些有用.有意义的脚本程序.有时,会经常使用shell数组.那么,shell中的数组是怎么表现的呢,又是怎么定义的呢?接下来逐一的进行讲解 ...