Okno dialogowe "Otwórz" makra SolidWorks

Cze wszystkim

Chcę otworzyć okno dialogowe "Otwórz" za pomocą makra, aby użytkownik mógł wybrać, który plik chce otworzyć.

Ktoś wie, którego polecenia użyć?

Dziękuję

1 polubienie

Witam, radzę korzystać z makra przez naukę, zobacz tutaj:

 http://help.solidworks.com/2013/French/SolidWorks/sldworks/c_recording_playing_macros.htm

Możesz również obejrzeć mój zapis makra pod:

.PL

Dziękuję za odpowiedź.

Próbowałem już wcześniej rejestratora makr, ale kod jest pusty, jeśli po prostu otworzę okno dialogowe i je zamknę. A jeśli otworzę plik, uzyskany kod działa, ale potrzebuje linku do pliku i chcę, aby to użytkownik wybrał plik do otwarcia.

Nie ma linku do zapisu jako makra.

1 polubienie

Rzeczywiście, właśnie stworzyłem samouczek, aby to zrobić:

http://www.lynkoa.com/tutos/import-export-formats-neutres/macro-solidworks-fen%C3%AAtre-ouvrir

 

1 polubienie

Dziękuję za ten samouczek!

Znalazłem jednak ten kod w API Solidworks, który otwiera okno dialogowe, ale po wybraniu pliku (części lub złożenia) nic się nie dzieje.

To samo dzieje się z podanym przez Ciebie kodem.

Czy masz jakiś pomysł dlaczego?

1 polubienie

Czy klikniesz dwukrotnie część i nic się nie stanie?

Tak, zgadza się.

Okno dialogowe zamyka się i to wszystko, pokój się nie otwiera.

Czy kod działa dla Ciebie?

Nie mogę teraz przetestować.

W jakiej wersji i SP SolidWorks się znajdujesz?

A jaki jest cel makro? Być może da się to obejść.

W rzeczywistości funkcja GetOpenFileName zwraca ścieżkę do wybranego pliku.

Aby go otworzyć, musisz dodać wiersz z poleceniem OpenDoc6 z fileName jako ścieżką.

Umieściłem poniższy kod (numer po fileName w wierszu "Set Part... " musi mieć wartość 1, jeśli chcesz otworzyć część i 2 dla zespołu):

 

Dim swApp As Object
Opcja jawna

 
Publiczny swModel                  jako SldWorks.ModelDoc2

Przyciemnij część jako obiekt
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long


Sub Main()

 

Przyciemnij filtr                      jako ciąg

Dim fileName                    As Ciąg

Dim fileConfig As String (Ciąg Plików)                 

Dim fileDispName                jako ciąg

Przyciemnij fileOptions                 tak długo

 

Ustaw swApp = Application.SldWorks

Filter = "Pliki SolidWorks (*.sldprt; *.sldasm; *.slddrw)|*.sldprt;*.sldasm;*.slddrw|Nazwa filtru (*.fil)|*.fil|Wszystkie pliki (*.*)|*.*|"

fileName = swApp.GetOpenFileName("Plik do dołączenia", "", Filtr, fileOptions, fileConfig, fileDispName)

Ustaw część = swApp.OpenDoc6(nazwa_pliku, 2, 0, "", longstatus, longwarnings)

Debug.Print nazwa_pliku

 
Koniec subwoofera

 

Miłego dnia

1 polubienie