C# Solidworks二次开发:获取主窗口API和创建新活动窗口API详解

今天要讲的是Solidworks中的两个API。

(1)Frame Method (ISldWorks):获取SOLIDWORKS主框架。

下面是API中给出的例子:

 public void Main(){ModelDoc2 swModelDoc = default(ModelDoc2);Frame swFrame = default(Frame);ModelWindow swModelWindow = default(ModelWindow);object[] modelWindows = null;int errors = 0;int warnings = 0;int HWnd = 0;string fileName = null;string strFolder = null;//Open the specified documents in their own windowsfileName = "C:\\Users\\Public\\Documents\\SOLIDWORKS\\SOLIDWORKS 2018\\samples\\tutorial\\assemblymates\\knee.sldprt";swModelDoc = (ModelDoc2)swApp.OpenDoc6(fileName, (int)swDocumentTypes_e.swDocPART, (int)swOpenDocOptions_e.swOpenDocOptions_Silent, "", ref errors, ref warnings);//Open client model window containing the active documentswApp.CreateNewWindow();fileName = "C:\\Users\\Public\\Documents\\SOLIDWORKS\\SOLIDWORKS 2018\\samples\\tutorial\\assemblymates\\bracket.sldprt";swModelDoc = (ModelDoc2)swApp.OpenDoc6(fileName, (int)swDocumentTypes_e.swDocPART, (int)swOpenDocOptions_e.swOpenDocOptions_Silent, "", ref errors, ref warnings);//Open client model window containing the active documentswApp.CreateNewWindow();fileName = "C:\\Users\\Public\\Documents\\SOLIDWORKS\\SOLIDWORKS 2018\\samples\\tutorial\\assemblymates\\clamp.sldprt";swModelDoc = (ModelDoc2)swApp.OpenDoc6(fileName, (int)swDocumentTypes_e.swDocPART, (int)swOpenDocOptions_e.swOpenDocOptions_Silent, "", ref errors, ref warnings);//Open client model window containing the active documentswApp.CreateNewWindow();swFrame = (Frame)swApp.Frame();modelWindows = (object[])swFrame.ModelWindows;Debug.Print("Open documents in their own windows:");foreach (object obj in modelWindows){swModelWindow = (ModelWindow)obj;//Get the model document in this model windowswModelDoc = (ModelDoc2)swModelWindow.ModelDoc;//Rebuild the documentswModelDoc.EditRebuild3();swModelDoc = null;//Show the model windowDebug.Print("");swFrame.ShowModelWindow(swModelWindow);//Get and print the model window handleHWnd = swModelWindow.HWnd;Debug.Print("  Model window handle: " + HWnd);//Get and print the model title as it is seen in the model window's title barDebug.Print("  Model title as it seen in the model's window's title bar: " + swModelWindow.Title);}strFolder = "";//Specify true to close all documents, specify false to close//only the documents not modifiedswApp.CloseAllDocuments(true);}

通过这个API获取到的Frame对象是有很多应用的,比如获取所有文档模型窗口。也可以实现在左侧主状态下方显示文本字符串。

(2)CreateNewWindow Method (ISldWorks):创建包含活动文档的客户端窗口。

使用的例子,在上面的例子已经涉及了。

这篇文章就介绍这两个API,本篇文章到此结束,我们下篇文章再见。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/766080.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯算法心得——附近最小(优先队列+滑动窗口)

大家好,我是晴天学长,这题可以用贪心优先队列和滑动窗口来写,需要的小伙伴可以关注支持一下哦!后续会继续更新的。💪💪💪 1) .附近最小 问题描述 小蓝有—个序列a[1], a[2],...,a[n]。 给定—个…

软件测试经验与教训

大概在18年的时候,就看过《软件测试经验与教训》的纸制版,里面的一些观点深刻的影响了我,也影响了后来我对测试的思考。最近又一次快速阅读了电子版,还是收获满满。下面精选出10条,和大家分享。 一、测试人员是项目的…

混合云构建-使用 Azure ExpressRoute 建立从本地到 Azure 虚拟网络的专用连接

如果有大量业务数据需要在本地数据中心和azure私有网络进行传输,同时保证带宽和时延的情况需要使用 ExpressRoute 设置从本地网络到 Azure 中的虚拟网络的专用连接。以下是实操步骤供参考: 一、创建和预配 ExpressRoute 线路 登录 Azure 门户。 在页面…

YOLOv9解读

论文地址:https://arxiv.org/abs/2402.13616 Github地址:https://github.com/WongKinYiu/yolov9 一、引言 作者认为当前深度学习方法忽略了一个事实,即当输入数据经过逐层特征提取和空间变换时,大量信息将会丢失。本文基于深入研…

RK3568驱动指南|第十三篇 输入子系统-第145 章 输入子系统上报数据格式分析

瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工艺,搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码,支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU,可用于轻量级人工…

PostgreSQL中控制文件的解析与恢复

最近遇到有人问起PG中控制文件的一些使用问题,总结了一下。 1、PG控制文件简介 1.1、存储的位置 它的路径位于: 相关信息,可以用命令pg_controldata得到: [10:41:27-postgres@centos2:/var/lib/pgsql/14/data/global]$ pg_controldata -D $PGDATA pg_control version …

深度学习十大算法之长短时记忆网络(LSTM)

一、长短时记忆网络(LSTM)的基本概念 长短时记忆网络(LSTM)是一种特殊类型的循环神经网络(RNN),主要用于处理和预测序列数据的任务。LSTM由Hochreiter和Schmidhuber于1997年提出,其…

自动驾驶建图--道路边缘生成方案探讨

自动驾驶建图–道路边缘生成方案探讨 一、背景 对于自动驾驶来说,建图是必不可少的,目前主流厂商技术都在从HD到"无图"进行过渡筹备中,不过想要最终实现真正的"无图"还是有很长的一段路要走。 对于建图来说,…

二.寄存器

1. 2. 例如:h即为high(高位),l即为low(低位) 3.一个字是两个字节 4.在写一条汇编指令或一个寄存器的名称时不区分大小写。 5.al,ah,ax在接受汇编指令时,并不相等&…

【计算机毕业设计】基于ssm038框架的网上招聘系统的设计与实现lw7

基于ssm038框架的网上招聘系统的设计与实现lw7: 本课题是基于ssm框架(springMVC,spring,mybatis)的招聘系统,是标准的MVC模式,将系统分为表现层、controller层、service层、DAO层四层,使用spring MVC负责请求的转发和视…

在pycharm中运行程序时总是以tests方式运行

## 问题描述 前两天在使用python写机器学习的算法时,有一个程序一直以Python tests的方式运行,并且一直运行失败,截图如下: 解决方法 到设置中:File->Settings->Tools->Python integrated Tools 文件->…

DBO优化朴素贝叶斯分类预测(matlab代码)

DBO-朴素贝叶斯分类预测matlab代码 蜣螂优化算法(Dung Beetle Optimizer, DBO)是一种新型的群智能优化算法,在2022年底提出,主要是受蜣螂的的滚球、跳舞、觅食、偷窃和繁殖行为的启发。 数据为Excel分类数据集数据。 数据集划分为训练集、验证集、测试…

基于springboot+vue的教学改革项目管理系统(源码+论文)

作者主页:Java码库 主营内容:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】:Java 【框架】:spring…

vs2019新建Qt工程中双击 .ui 文件无法打开

vs2019 中创建的 Qt 工程,在使用的过程中,经常会有:双击 .ui 文件,闪退的情况,也即 .ui 文件无法打开! 针对该问题的详细解决步骤如下: 1、右击该 .ui 文件,选择“打开方式” 2、…

6、kubenetes 卷

1、什么是卷 在某些场景下,我们可能希望新的容器可以在之前容器结束的位 置继续运⾏,⽐如在物理机上重启进程。可能不需要(或者不想要) 整个⽂件系统被持久化,但又希望能保存实际数据的⽬录。 Kubernetes通过定义存储…

指尖论文能用吗 #经验分享#微信

指尖论文是一款非常好用、靠谱、方便的论文写作、查重降重工具。无论是学生还是学者,都可以通过指尖论文轻松完成论文写作任务。指尖论文提供了丰富的论文模板和参考资料,让论文写作变得更加简单和高效。 指尖论文还内置了强大的查重和降重功能&#xff…

Centos上安装Harbor并使用

harbor的安装与使用 Harbor介绍安装前的准备工作为Harbor自签发证书安装Harbor安装docker开启包转发功能和修改内核参数安装harbor扩展 Harbor 图像化界面使用说明测试使用harbor私有镜像仓库从harbor仓库下载镜像 Harbor介绍 容器应用的开发和运行离不开可靠的 镜像管理&…

2024年阿里云服务器优惠价格表_一张表清晰明了

2024年腾讯云服务器优惠价格表,一张表整理阿里云服务器最新报价,阿里云服务器网整理云服务器ECS和轻量应用服务器详细CPU内存、公网带宽和系统盘详细配置报价单,大家也可以直接移步到阿里云CLUB中心查看 aliyun.club 当前最新的云服务器优惠券…

Mac上玩《赛博朋克2077》mac电脑怎么玩这个游戏

X用户crushovitz_b最近发现,在《赛博朋克2077》游戏主菜单页面,将鼠标停在版本号选项卡上面足够长时间,就会发现游戏当前的版本号由2.12变为了2.0.77,这是对游戏标题2077的致敬彩蛋。 《赛博朋克2077》的叙事总监兼续集副总监Pawe…

C语言实现三子棋强化学习算法AI,思路详解+完整代码

写个三子棋的强化学习AI玩玩。写这玩意只需要有一点C语言基础就可以了,至于AI部分,也是很好理解的。 三子棋 在3*3的棋盘中,先手方画O,后手方画X,连成3个就赢了。事实上,只需要很简单的试验,你…