文章作者:里海
来源网站:里海NX二次开发3000例专栏
感谢粉丝订阅
感谢 风在云端see 订阅本专栏,非常感谢。
简介
一个用纯NXOpen开发的简单例子,不使用任何ufun函数
效果
弹出消息对话框
代码
#include <string>
#include <exception>
#include <uf_defs.h>
#include <NXOpen/Session.hxx>
#include <NXOpen/NXMessageBox.hxx>
#include <NXOpen/UI.hxx>
extern "C" DllExport void ufusr(char* param, int* retCode, int paramLen)
{
try
{
NXOpen::Session* theSession = NXOpen::Session::GetSession();
NXOpen::NXMessageBox* msgBox = NXOpen::UI::GetUI()->NXMessageBox();
msgBox->Show("标题Error", NXOpen::NXMessageBox::DialogTypeError, "内容1");
msgBox->Show("标题Warning", NXOpen::NXMessageBox::DialogTypeWarning, "内容1");
msgBox->Show("标题Information", NXOpen::NXMessageBox::DialogTypeInformation, "内容2");
int retQus = msgBox->Show("标题Question", NXOpen::NXMessageBox::DialogTypeQuestion, "内容3");
if (retQus == 1)
{
msgBox->Show("标题", NXOpen::NXMessageBox::DialogTypeInformation, "点击了“是”");
}
else if (retQus == 2)
{
msgBox->Show("返回值", NXOpen::NXMessageBox::DialogTypeInformation, "点击了“否”");
}
}
catch (std::exception& ex)
{
NXOpen::UI::GetUI()->NXMessageBox()->Show("异常", NXOpen::NXMessageBox::DialogTypeError, ex.what());
}
}
extern "C" DllExport int ufusr_ask_unload()
{
return NXOpen::Session::LibraryUnloadOptionImmediately;
}
C++语言在UG二次开发中的应用及综合分析
- C++ 是C语言的扩展,它既可以执行C语言的过程化程序设计,也可以进行以抽象数据类型为特点的基于对象的设计,以及面向对象的程序设计。C++ 在处理问题规模上具有很大的适应性。
- C++不仅具有计算机高效运行的实用性特征,并且致力于提升大规模程序的编程质量以及程序设计语言的问题描述能力。
在UG二次开发中,C++语言具有以下特点
- C++语言支持多种程序设计风格
- C++的许多特性以库的形式存在,保证了语言的简洁和开发运行的效率
- 与C语言相比,C++引入了面向对象的概念,使得UG二次开发的人机交互界面更加简洁
- 通过借助UG自带的2000多种API函数,结合高级语言C++以及编程软件Visual Studio,可以对UG进行二次开发
- 需要注意的是,市场上的Visual Studio和UG版本众多,并非所有版本都能兼容
程序设计过程通常包括以下步骤:
- 问题分析:对要解决的问题进行深入的分析,理解问题的具体需求和限制。
- 需求定义:明确程序的目标和功能,包括用户需求、系统需求等。
- 设计:根据需求进行设计,包括算法设计、数据结构设计、界面设计等。
- 编码:根据设计的结果,使用一种编程语言将程序代码实现出来。
- 测试:通过各种测试方法来确保程序的正确性,包括单元测试、集成测试、系统测试等。
- 维护:对程序进行修改和完善,以解决可能出现的问题或满足新的需求。
- 文档编写:编写程序文档,描述程序的功能、操作方法、注意事项等。