列文章目录
文章目录
前言
随着工业智能化的不断发展,UG二次开发的需求越来越多,也吸引了大批的二开从业人员,本人作为一名资深IT从业者(10年+)也毅然加入二次开发大军。
然而,和流行IT行业(互联网、金融、医疗等)相比,工业智能化的门槛显得更高一点,专业的工业软件,相对封闭的开发理念和更小的开发圈子,让刚进入二开的从业者有点举步维艰。边学边整理,希望通过这系列文章的整理能给二开的生态增添一叶绿。
一、UI样式文件分析
1. 样式文件目录
目录位置:UGOPEN\SampleNXOpenApplications\C++\BlockStyler\ColoredBlock\ColoredBlock.dlx
2. 样式文件导入预览

3. 样式文件解析
本实例主要用到了双精度、指定点、对象颜色拾取器三个控件
二、源码文件解析
1. 主程序分析
public static void Main()
{
try
{
theColoredBlock = new ColoredBlock();
// The following method shows the dialog immediately
theColoredBlock.Show();
}
catch (Exception ex)
{
//---- Enter your exception handling code here -----
theUI.NXMessageBox.Show("Block Styler", NXMessageBox.DialogType.Error, ex.Message);
}
finally
{
theColoredBlock.Dispose();
}
}
public ColoredBlock()
{
try
{
theSession = Session.GetSession();
theUI = UI.GetUI();
theDialogName = "D:\\Program Files\\Siemens\\NX 8.0\\UGOPEN\\SampleNXOpenApplications\\C++\\BlockStyler\\ColoredBlock\\ColoredBlock.dlx";
theDialog = theUI.CreateDialog(theDialogName);
theDialog.AddApplyHandler(new NXOpen.BlockStyler.BlockDialog.Apply(apply_cb));
theDialog.AddInitializeHandler(new NXOpen.BlockStyler.BlockDialog.Initialize(initialize_cb));
theDialog.AddDialogShownHandler(new NXOpen.BlockStyler.BlockDialog.DialogShown(dialogShown_cb));
}
catch (Exception ex)
{
//---- Enter your exception handling code here -----
throw ex;
}
}
Main函数里,我们只需要关注ColoredBlock()方法;
在ColoredBlock()方法里,主要加载了dlx文件路径,提交方法apply_cb,控件初始化方法initialize_cb,回调方法dialogShown_cb。下面,我们重点讲一下提交方法和控件初始化方法。
2. 处理模块分析
public void initialize_cb()
{
try
{
group0 = theDialog.TopBlock.FindBlock(

最低0.47元/天 解锁文章
4692

被折叠的 条评论
为什么被折叠?



