SolidWorks机械工程师网——最大的SolidWorks学习平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5816|回复: 17
打印 上一主题 下一主题

宏执行SW自带菜单命令的方法-解决篇

  [复制链接]

17

主题

149

帖子

1307

金币

传奇

Rank: 8Rank: 8

积分
4127

最佳新人活跃会员热心会员宣传达人灌水之王

跳转到指定楼层
楼主
 楼主| 发表于 2024-12-5 14:42:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

   经典图书
先上一段宏,执行效果是  装配体下隐藏所有ToolBox 零件。
这段宏只是简单的执行了两个SW自带的菜单命令。
仅在2024SP5上测试通过

审核通过了再写找菜单ID的 方法;)



#If VBA7 Then
     Private Declare PtrSafe Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
#Else
     Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
#End If

Dim swApp As SldWorks.SldWorks

Sub main()

    Set swApp = Application.SldWorks

    RunWmCommand swApp, 59533

    RunWmCommand swApp, 32998

End Sub

Sub RunWmCommand(swApp As SldWorks.SldWorks, cmd As Long)

    Const WM_COMMAND As Long = &H111

    Dim swFrame As SldWorks.Frame

    Set swFrame = swApp.Frame

    SendMessage swFrame.GetHWnd(), WM_COMMAND, cmd, 0

End Sub

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏5 转播转播 分享教程|习题|模型|技巧 点赞点赞1 拍砖拍砖
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复

使用道具 举报

17

主题

149

帖子

1307

金币

传奇

Rank: 8Rank: 8

积分
4127

最佳新人活跃会员热心会员宣传达人灌水之王

沙发
 楼主| 发表于 2024-12-5 14:43:45 | 只看该作者
找菜单ID是关键,这里再次感谢“384432485”提供的思路

查找方法就是使用Spy++  这个监听小工具。
有2点需要说一下,Spy++是个“老”程序了,版本比较多,我下了4、5个才找到这个好用的。
另一点是,我之前设置了SW按管理员模型启动,这可能导致监听不到或冲 突。


早些时候的求助帖在这里
https://www.swbbsc.com/thread-380734-1-1.html


Spy++  使用方法
https://blog.csdn.net/zggzgw/article/details/103300579


Spy++ 下载地址贴不上来:(
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 反对

使用道具 举报

17

主题

149

帖子

1307

金币

传奇

Rank: 8Rank: 8

积分
4127

最佳新人活跃会员热心会员宣传达人灌水之王

板凳
 楼主| 发表于 2024-12-5 14:44:57 | 只看该作者

   经典图书
3楼暂留3楼暂留3楼暂留
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

17

主题

149

帖子

1307

金币

传奇

Rank: 8Rank: 8

积分
4127

最佳新人活跃会员热心会员宣传达人灌水之王

地板
 楼主| 发表于 2024-12-5 15:13:27 | 只看该作者
搜这个
Microsoft Spy++ 14.0.22129.1 绿色版
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

26

帖子

32

金币

天使

Rank: 2Rank: 2

积分
101
QQ
5#
发表于 2024-12-5 16:36:51 | 只看该作者

   经典案例图书
很不错,顶一下!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

12

主题

527

帖子

1198

金币

传奇

Rank: 8Rank: 8

积分
6121

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

6#
发表于 2024-12-5 16:42:23 | 只看该作者
感谢楼主分享,很不错!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

8

主题

238

帖子

315

金币

长老

彭于晏 [已认证]

Rank: 6Rank: 6Rank: 6

积分
1885

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

QQ
7#
发表于 2024-12-5 17:00:15 | 只看该作者

   经典案例图书
学习了--但是没学会- - -
[em ...
回复 支持 反对

使用道具 举报

3

主题

279

帖子

296

金币

长老

Rank: 6Rank: 6Rank: 6

积分
2600

最佳新人活跃会员热心会员宣传达人灌水之王

8#
发表于 2024-12-5 18:12:56 | 只看该作者
Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long请教楼主,这句飘红,是不是64位系统要改写才行

SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

7

主题

897

帖子

74

金币

长老

Rank: 6Rank: 6Rank: 6

积分
2514

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

9#
发表于 2024-12-7 14:22:35 | 只看该作者
学习了--但是没学会- - -
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

19

主题

667

帖子

1750

金币

传奇

Rank: 8Rank: 8

积分
7598

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

10#
发表于 2024-12-7 16:16:58 | 只看该作者

   经典图书
感谢楼主分享,很不错!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

17

主题

149

帖子

1307

金币

传奇

Rank: 8Rank: 8

积分
4127

最佳新人活跃会员热心会员宣传达人灌水之王

11#
 楼主| 发表于 2024-12-7 21:24:55 | 只看该作者
sunny_8848 发表于 2024-12-5 18:12
Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wM ...

不知道,这段本就是抄来的。
只是现在应该没谁用32位了吧,我的也是64位系统,所以应该不要改吧
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

179

帖子

206

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1086

最佳新人活跃会员热心会员宣传达人灌水之王

12#
发表于 2024-12-22 09:29:21 | 只看该作者
学习了--但是没学会
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

16

主题

152

帖子

2422

金币

传奇

Rank: 8Rank: 8

积分
5696

最佳新人活跃会员热心会员宣传达人灌水之王

13#
发表于 2024-12-25 13:07:40 | 只看该作者
就是发送消息号,我一直在用,很方便。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

7

主题

897

帖子

74

金币

长老

Rank: 6Rank: 6Rank: 6

积分
2514

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

14#
发表于 2024-12-25 20:43:08 | 只看该作者
就是发送消息号,我一直在用,很方便。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

16

主题

152

帖子

2422

金币

传奇

Rank: 8Rank: 8

积分
5696

最佳新人活跃会员热心会员宣传达人灌水之王

15#
发表于 2024-12-28 15:01:26 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

caption_cn 发表于 2024-12-5 14:43
找菜单ID是关键,这里再次感谢“384432485”提供的思路

查找方法就是使用Spy++  这个监听小 ...


分享我在用的软件吧,简单快捷,打开spy.exe就行了

HotkeyP.zip

(10.82 KB, 下载次数: 110

SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

42

主题

2359

帖子

3041

金币

传奇

Rank: 8Rank: 8

积分
9202

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

16#
发表于 2024-12-30 10:14:03 | 只看该作者

   经典案例图书
SolidWorks机械工程师网,顶一下。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

8

主题

688

帖子

1062

金币

实习版主

Rank: 7Rank: 7Rank: 7Rank: 7

积分
6463

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

17#
发表于 2024-12-30 12:45:56 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

活到老学到老!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

643

帖子

439

金币

传奇

Rank: 8Rank: 8

积分
3846

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

18#
发表于 2025-2-27 12:48:11 | 只看该作者

   经典案例图书
感谢楼主分享,很不错!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

102

帖子

101

金币

堂主

Rank: 4

积分
590

最佳新人活跃会员热心会员宣传达人

19#
发表于 2025-6-23 22:11:46 | 只看该作者
大神请教一下,SW2018能实现这个功能不?我自己尝试了一下没成功,没学会。

摘要信息框模拟点击确认按钮.png
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

SOLIDWORKS 2023 机械设计从入门到精通

手机版|小黑屋| GMT+8, 2025-7-19 02:10 , Processed in 0.464472 second(s), 26 queries , Memcache On.

SolidWorks机械工程师网 ( 鲁ICP备14025122号-2 ) 鲁公网安备 37028502190335号

声明:本网言论纯属发表者个人意见,与本网立场无关。
如涉版权,可发邮件: admin@swbbsc.com

快速回复 返回顶部 返回列表