QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 2412|回复: 8
收起左侧

[求助] 在宏里怎么调用solidworks自带的“选择文件夹”对话框?

[复制链接]
发表于 2022-4-21 13:37:53 | 显示全部楼层 |阅读模式 来自: 中国江苏常州
其他
主题分类用于问题归类:

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
求助各位大佬,在SW宏里怎么调用solidworks自带的“选择文件夹”对话框,如下图,不知道用哪个函数或者方法可以调用这个对话框。类似于用GetOpenFileName可以调用“打开”对话框一样,
' M: T1 A* n6 K用BrowseForFolder也可以选择文件夹,但是感觉没有solidworks自带的那个好用。! `! @* P+ a: b4 |
选择文件夹01.png " U( s9 s4 a' k' z7 R$ E( v

. S/ R- W# C8 a. Q: n6 l
; i9 |6 B2 _: d; d8 }7 F+ T+ X$ W8 e0 {. \  w2 W
 楼主| 发表于 2022-4-23 09:18:32 | 显示全部楼层 来自: 中国江苏常州
自己顶一下,希望知道的朋友能分享下方法
发表于 2022-4-26 22:03:49 | 显示全部楼层 来自: 中国福建厦门
microsoft shell controls and automation
 楼主| 发表于 2022-4-28 18:22:26 | 显示全部楼层 来自: 中国江苏常州
fend5566 发表于 2022-4-26 22:03& E0 ^$ z. H- m4 Z; V! R
microsoft shell controls and automation

2 t# K7 ]! G# Y" `- B) \0 D能具体点吗,宏不是太懂,只自学了一点,能有个例子就好了。用这个方法我只能打开这样的对话框+ a7 m5 _% }. z3 r9 k4 e9 J
/ o5 i: S* a! d3 \- ^4 p
12345.png : {, o) c: m, Z# o- P" X" e: i. r) y

点评

樓主是想要開啟左邊的快速存取?  发表于 2022-5-20 09:39
 楼主| 发表于 2022-5-16 15:43:40 | 显示全部楼层 来自: 中国江苏常州
还有希望能得到高手的指点吗
发表于 2022-5-20 09:38:05 | 显示全部楼层 来自: 中国台湾
本帖最后由 gt.adan 于 2022-5-20 09:58 编辑 $ I- F" P+ T. U9 M- S

0 R' G0 @/ O9 k" w代碼如下~
1 |0 ?2 E9 N$ M0 J1 l. a( x8 P2 s
  1. Option Explicit: c; |' C& K- x, G# [) @+ S6 [  F

  2. & U2 v7 y/ @' A. p
  3. Dim swApp As SldWorks.SldWorks) f" h1 {. y6 B: [% [/ V5 m

  4. ) M$ C4 E' ]1 l+ B6 c
  5. Sub main()
    8 f* U0 u& f5 C1 W: k" z: r0 U
  6. * N8 f7 o- V2 M- o6 }2 r1 [
  7.   Set swApp = Application.SldWorks
    4 N5 |" d: s( J- B  [/ i
  8.   Dim swFilter As String
    . b  D" v- Q  C1 w5 O$ Z4 G2 ?% E8 {$ K
  9.   Dim fileName As String; Q2 V: @% G. H" E) X# r+ P
  10.   Dim fileConfig As String
    - r3 H2 {1 R) D+ T& ^- U
  11.   Dim fileDispName As String( M4 K1 i/ P( V, o, c5 e7 l2 ]- I3 O
  12.   Dim fileOptions As Long
    % w. M1 e5 a& ~0 t
  13.   swFilter = "SOLIDWORKS Files (*.sldprt; *.sldasm; *.slddrw)|*.sldprt;*.sldasm;*.slddrw"# w2 m6 T4 {! x7 q8 @; i5 ]
  14.   
    : O* x$ F1 O  A' E3 p2 v" w
  15.   ' Browse and get the Selected file name$ V# c. k( [# [7 U' |
  16.   fileName = swApp.GetOpenFileName("Browse Document", "", swFilter, fileOptions, fileConfig, fileDispName)
    ( A- L: {" R! ?! t& C

  17. 9 n& o' t  L. B" O
  18. End Sub
复制代码

; I+ b1 x& X- s! G  P; E& n/ k9 `" Y1 R! @  e7 z/ }) j
 楼主| 发表于 2022-5-23 15:16:20 | 显示全部楼层 来自: 中国江苏常州
gt.adan 发表于 2022-5-20 09:38
# }; {( R6 w! h; _* |* o代碼如下~
* p4 e, ]8 A2 R3 k2 j
多谢回复,您的代码是打开某个文件的,我现在是想要选择到某个文件夹位置,而不打开具体文件,只要得到文件夹的路径就好。
( ^2 Z2 c- f2 b' L比如我们在”系统选项“设置 文件模板 位置的时候,只需要选择一个文件夹,现在就不知道在宏里怎么调用到和那一样的“选择文件夹”对话框。

点评

多加一行代碼就可以了…  详情 回复 发表于 2022-12-13 13:31
发表于 2022-12-13 13:31:53 | 显示全部楼层 来自: 中国台湾
lider2010 发表于 2022-5-23 15:16
; ^8 @1 p) F1 x/ f& b多谢回复,您的代码是打开某个文件的,我现在是想要选择到某个文件夹位置,而不打开具体文件,只要得到文 ...
7 F5 e; v* x9 p9 ~
多加一行代碼就可以了…- ], r) c. d, k6 w6 z, Q: G5 M

6 K0 Z* t: D8 B& f  ]" D
  1. Option Explicit
    0 x) [3 q  k1 e
  2. 3 I/ K- Y, a% b& z9 t
  3. Dim swApp As SldWorks.SldWorks. d7 Q) P3 E; L9 Z
  4. Dim swFilter As String, fileName As String, fileConfig As String, fileDispName As String$ Z' }5 [9 B0 E8 Z5 `! O; @' i
  5. Dim fileOptions As Long' j3 m7 j2 ]4 q! I1 q( d

  6. 9 t2 x7 W, R% M3 ]
  7. Sub main()' {; Y7 }/ y! w- y5 o  F" S
  8. Set swApp = Application.SldWorks7 \& D- W& R. _$ q2 F/ n/ J0 k1 q% U
  9. swFilter = "All(*.*)|*.*"& |+ l. D' B) M1 A6 {
  10. 4 O9 T6 k0 \" R
  11. ' Browse and get the Selected file name5 d4 H& g. ?* H1 s
  12. fileName = swApp.GetOpenFileName("Browse Document", "", swFilter, fileOptions, fileConfig, fileDispName)4 T% ^" V0 O% C2 ?( |9 j& H% P. S
  13. ' Get the path of the selected file' `1 o% B3 C& a4 \$ n
  14. fileName = Left(fileName, InStrRev(fileName, ""))
    0 T& H# W1 x6 n4 G- Y  t# k
  15. Debug.Print fileName! h; q3 J" |) M0 [4 D9 P  [5 [
  16. End Sub
    7 W1 f/ S2 S% ~# @
复制代码

* L) P( E, s. v$ X; i! E) |, ?2 \0 O' D6 B/ Z' O2 ]% G5 l4 O
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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