NX屏蔽窗口的按钮
有时候在激活一个命令按钮的时候,需要同时禁止掉另外一个或多个命令按钮
''' <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屏蔽窗口的按钮的更多相关文章
- 激活NX窗口的按钮
原理:取得按钮名称以后,通过运行宏文件激活按钮 Imports System.IO Imports System.Runtime.InteropServices Imports NXOpen.Menu ...
- window窗口-button(按钮)-dialog(对话框,带按钮)
描述:一个可拖动的窗口程序,默认情况下窗口自由移动.调整大小.打开关闭! 案例1(普通的窗口): <div class="easyui-window" icon-Cls=&q ...
- Python pyQt4/pyQt5 学习笔记1(空白窗口,按钮,控件事件,控件提示,窗体显示到屏幕中间,messagebox)
PyQt4是用来编写有图形界面程序(GUI applications)的一个工具包.PyQt4作为一个Python模块来使用,它有440个类和超过6000种函数和方法.同时它也是一个可以在几乎所有主流 ...
- 【windows 操作系统】什么是窗口?|按钮也是窗口
起因 在看操作系统消息机制的时候,看到一句化:全局消息队列把消息发送到窗口所在的线程消息队列.突然就怀疑起了窗口的意思.于是就有这边基类. 文章来源:https://docs.microsoft.co ...
- 关于wxwidgets图形界面的关闭窗口的按钮无效的解决办法
这是使用wxsmith设计界面时的情况,如果用纯代码写的界面,关闭按钮就很奇怪地有效 道听途说,窗口的关闭是由一个方法控制着.大概是这样的: void PlainFrame::OnClose(wxCl ...
- Lodop窗口的按钮、权限,隐藏或设置功能不可用
Lodop隐藏某个按钮或部分,具体参考Lodop技术手册 SET_SHOW_MODE篇.以下是几个例子,(对应下图图片): 第一种:LODOP.SET_SHOW_MODE ("HIDE_PB ...
- Ubuntu GNOME 13.04将关闭窗口的按钮放在最右边
转载请注明:转自http://blog.csdn.net/u010811449/article/details/9426187 先上图: 首先打开dconf系统配置编译器. 找到 rog -> ...
- Android 屏蔽recent task 按钮
Step 1 Add this permission to the manifest.xml file <uses-permission android:name="android.p ...
- pyqt5 设置窗口按钮等可用与不可用
setEnabled(True) 设置窗口或者按钮可用,Flase不可用
随机推荐
- Python3-sqlalchemy-orm 联表查询-无外键关系
#-*-coding:utf-8-*- #__author__ = "logan.xu" import sqlalchemy from sqlalchemy import crea ...
- C++模板使用
C++模板 模板是一种对类型进行参数化的工具: 通常有两种形式:函数模板和类模板: 函数模板针对仅参数类型不同的函数: 例如:Max函数 :求两个数的最大值,我们需要对各种数据类型进行重载,如下 in ...
- 发布日志 - kratos v2.0.4 版本发布
V2.0.4 Release Release v2.0.4 · go-kratos/kratos (github.com) 新的功能 proto-gen-http 工具在生产代码时如果 POST/PU ...
- QT程序打包成多平台可执行文件
一.简述 QT项目开发完成后,需要打包发布程序,在实际生产中不可能把源码发给别人,所以需要将源码打包正可执行文件或者安装程序. 二.设置应用图标 把 ico 文件放到源代码目录下,在QT项目中的'.p ...
- jvm学习笔记:程序计数器
程序计数器(PC Register) The Java Virtual Machine can support many threads of execution at once (JLS §17). ...
- 在C#中将图像转换为BASE64
本教程说明如何在C#.NET Windows Forms Application中将图像转换为base64字符串,以及将base64字符串转换为图像.您可以创建一个新的Windows窗体应用程序项目来 ...
- 方法重载(Override)
什么是方法的重写(override 或 overwrite)? 子类继承父类以后,可以对父类中同名同参数的方法,进行覆盖操作. 应用: 重写以后,当创建子类对象以后,通过子类对象调用子父类中的同名同参 ...
- Devexpress 饼状图
<dxc:ChartControl Name="chart" BorderThickness="0&q ...
- Ansible快速实战指南----多机自动化执行命令、部署神器
1.需求: 需要在多台主机上,发送文件.执行命令,进行快速部署 2.ansible 远程复制文件 例子:在当前节点(20.88.14 ...
- Shell系列(38)- 数组操作→取值、遍历、替换、删除
引言 在Linux平台上工作,我们经常需要使用shell来编写一些有用.有意义的脚本程序.有时,会经常使用shell数组.那么,shell中的数组是怎么表现的呢,又是怎么定义的呢?接下来逐一的进行讲解 ...