QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
求助各位大佬,在SW宏里怎么调用solidworks自带的“选择文件夹”对话框,如下图,不知道用哪个函数或者方法可以调用这个对话框。类似于用GetOpenFileName可以调用“打开”对话框一样,! N0 _# Y% b, T4 A, ^" n" {# S
用BrowseForFolder也可以选择文件夹,但是感觉没有solidworks自带的那个好用。$ P( S) |7 D6 x3 g1 [' w' _
选择文件夹01.png 9 q) x' D( |" w: Y) m
% M! h; C+ A/ b- ^; A) A1 c! f0 J

( [' {% P, R) i# Z1 g" s: x3 y& Y: a9 e
 楼主| 发表于 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
, K/ K% f) A4 u( [3 M( @microsoft shell controls and automation

: W) C4 N+ \7 N6 \! J. t( F能具体点吗,宏不是太懂,只自学了一点,能有个例子就好了。用这个方法我只能打开这样的对话框
$ e# [+ W; _, n% ]0 g% [! w9 i: d
- i9 k  e3 o. z: J& K 12345.png
5 W0 l: Z+ k- K

点评

樓主是想要開啟左邊的快速存取?  发表于 2022-5-20 09:39
 楼主| 发表于 2022-5-16 15:43:40 | 显示全部楼层 来自: 中国江苏常州
还有希望能得到高手的指点吗
发表于 2022-5-20 09:38:05 | 显示全部楼层 来自: 中国台湾
本帖最后由 gt.adan 于 2022-5-20 09:58 编辑 ' ^4 b! X; t2 C& S. K0 I- X
0 x0 V% I. v' v4 p
代碼如下~" A& \( J4 C' }( X# p8 b" E
  1. Option Explicit
    - P% c. P, k/ N) n
  2. - q. @5 m1 @# ]# M
  3. Dim swApp As SldWorks.SldWorks
    / I! F* R6 b; U  V8 ~" @# O- L

  4. - Q+ ^, O1 B% E4 ?
  5. Sub main()3 @0 u# K. P5 E& ]  [
  6. % }" ^6 P* N, [7 r) A8 A0 b
  7.   Set swApp = Application.SldWorks2 |4 _7 }( u+ j* d
  8.   Dim swFilter As String
    & u7 R" l  S$ e- E+ L! `
  9.   Dim fileName As String3 Y& M$ r' Q& o  \' X% |
  10.   Dim fileConfig As String
    - L( ^, F6 G. U3 d( B
  11.   Dim fileDispName As String/ U1 L# k' f: O! R; ~- J, t5 F; l
  12.   Dim fileOptions As Long
    " w7 ?) s: K$ T8 S5 K' t
  13.   swFilter = "SOLIDWORKS Files (*.sldprt; *.sldasm; *.slddrw)|*.sldprt;*.sldasm;*.slddrw"1 |  x/ d2 V8 ^. W# B# i
  14.   - f& O# y6 N1 F6 b$ J2 A6 a) t
  15.   ' Browse and get the Selected file name7 @! P' {# l- }# X' F* [( S# S
  16.   fileName = swApp.GetOpenFileName("Browse Document", "", swFilter, fileOptions, fileConfig, fileDispName)
      l. E7 T6 T$ n0 ^
  17. 0 R$ Q( W9 \" ]) x( @  x& @
  18. End Sub
复制代码

& R/ T. d3 c, N8 w+ ^/ X5 A+ e
2 p3 C6 `+ G! j0 R  A+ @6 q$ V
 楼主| 发表于 2022-5-23 15:16:20 | 显示全部楼层 来自: 中国江苏常州
gt.adan 发表于 2022-5-20 09:383 i: e+ D6 E7 w' }# z: V/ ^3 ^+ V5 ^3 P
代碼如下~

/ ^( B/ Q/ W% ]3 @$ t1 \. v多谢回复,您的代码是打开某个文件的,我现在是想要选择到某个文件夹位置,而不打开具体文件,只要得到文件夹的路径就好。
* ^& U1 C1 R' R- A- @8 u0 x$ v比如我们在”系统选项“设置 文件模板 位置的时候,只需要选择一个文件夹,现在就不知道在宏里怎么调用到和那一样的“选择文件夹”对话框。

点评

多加一行代碼就可以了…  详情 回复 发表于 2022-12-13 13:31
发表于 2022-12-13 13:31:53 | 显示全部楼层 来自: 中国台湾
lider2010 发表于 2022-5-23 15:16- A3 S& I( S1 P
多谢回复,您的代码是打开某个文件的,我现在是想要选择到某个文件夹位置,而不打开具体文件,只要得到文 ...
% \! b' @$ b: U
多加一行代碼就可以了…
, w( Z8 A' S; T# i' n
. B2 H8 X: C5 g' ~) ?) P# i& W
  1. Option Explicit
    9 i* q4 C! ?. ?  h

  2. 5 O) z+ x* S9 M4 q- I
  3. Dim swApp As SldWorks.SldWorks
    5 E4 {  k) L8 i  [4 X' q
  4. Dim swFilter As String, fileName As String, fileConfig As String, fileDispName As String7 Q$ V2 G( |/ ?3 Z8 Z# U
  5. Dim fileOptions As Long! t% T/ }7 M8 |% e
  6. # Q$ g. R# P0 ^3 _: M* c2 V) A
  7. Sub main(), G9 K, U; ]$ y& x2 ^; B# s" z/ [3 t
  8. Set swApp = Application.SldWorks# J* \  z4 ^9 e, O
  9. swFilter = "All(*.*)|*.*"' X6 M$ @( c/ X' [% k% f
  10. $ g- D4 y4 J' T: |" R! {- B1 s
  11. ' Browse and get the Selected file name- s/ a+ K8 ^. G2 r( J: b6 _8 g
  12. fileName = swApp.GetOpenFileName("Browse Document", "", swFilter, fileOptions, fileConfig, fileDispName)
    ; P1 ~& H- y1 w% Q0 P
  13. ' Get the path of the selected file  m; v0 ]+ a4 R& N) C
  14. fileName = Left(fileName, InStrRev(fileName, ""))4 u6 \7 ~# l. a7 v
  15. Debug.Print fileName) p3 c7 f- [1 G: y, a
  16. End Sub
      b7 Z3 C( }; l
复制代码

! M- R$ D- s3 E3 q
% U' F( `! v1 p9 ?0 N
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

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