Otwórz pokój

Witam wszystkich,

 

Zdaję sobie sprawę, że bardzo często używam przycisku "Otwórz część" w zespole, aby edytować daną część.

Nie wymyśliłem, jak przypisać skrót klawiaturowy do tej "funkcji".

 

Celem byłoby wybranie (dowolnej tarczy) monety i otwarcie jej samodzielnie.

 

Macie jakieś pomysły?


Dziękuję bardzo!

1 polubienie

Witam

 

Jeśli nie znalazłeś go na liście po kliknięciu prawym przyciskiem myszy na pasku narzędzi > Dostosuj > klawiatury Onlget (jest pole wyszukiwania, w którym możesz wpisać "otwórz"), nie powinno to być możliwe!

 

Może za pomocą makra!

 

Edit: Znalazłem makro, które pozwala bezpośrednio otworzyć rysunek dla wybranej części w złożeniu, jest ona dołączona.

Mała modyfikacja może załatwić sprawę!


open_selected_component_drawing.swp_.zip
2 polubienia

Witam

 

Znalazłem ten maccro, nie testowałem go, ale według autora otwiera on twoją część/podzespół bezpośrednio, klikając na niego lub wybierając go w menedżerze funkcji.

 

Cdt

Joss


assemblyopen.swp
4 polubienia

Świetne makro, działa! Dziękuję bardzo!

 

Aby przypisać makro do skrótu klawiaturowego:

 

http://help.solidworks.com/2012/French/SolidWorks/sldworks/t_assigning_macro_keyboard_shortcut.htm

 

 

4 polubienia

Naprawdę nie widzę sensu umieszczania tego przycisku jako skrótu....

 

Po kliknięciu na część w zespole otworzy się małe okno (patrz obrazek)

 

Kto pozwala na otwarcie pokoju? To już skrót u podstawy.

 

Jeśli dobrze rozumiem, chciałbyś kliknąć pokój, aby go otworzyć, i nacisnąć, aby go otworzyć?


ouvrir.png
3 polubienia

@Bart

 

Z przyzwyczajenia, osobiście pracuję prawie wyłącznie ze skrótami klawiaturowymi. Na przykład B pozwala mi usunąć komponent, Ctrl+D aby bezpośrednio otworzyć rysunek,... i kilkadziesiąt innych. Historycznie rzecz biorąc, przyjechałem tu po to, żeby nie musieć ciągle szukać ikon.

 

Wolę to (moja muzyczna strona może... ;) ). Każdy ma swoje własne postrzeganie tematu.

Nadal trzymam ręce na klawiaturze (dużo skrótów).

 

Moja akcja, aby otworzyć pokój: Wybierz kliknij dowolną powierzchnię pokoju + o

Z małym oknem: Kliknij część + przesuń mysz na przycisk + kliknięcie.

 

Po prostu unikam kliknięć (robię już ich całkiem sporo...)

 

Mam inne bezpośrednie skróty, mam mysz z 5 przyciskami:

 

Przycisk 3: Narzędzie do pomiaru

Przycisk 4: Normalny A

Przycisk 5: Powiększ zaznaczenie

O: Otwórz część z zaznaczoną jedną stroną.

F: Zoom w najlepszym razie

Utwórz zestaw z: Ctrl i +

Zakładka: Ukryty wybrany komponent

Ctrl + Tab: Nawigowanie między dokumentami

F9: Ukryj lewy panel

E: Szkic po wybranej stronie

 

Mam też inne w systemie Windows.

2 polubienia

Ponownie otwieram post, ponieważ mam mały problem z makrem, o którym mowa, które służy do otwierania wybranej części w obszarze graficznym. 

Dzieje się tak, ponieważ makro działa tylko wtedy, gdy część jest ustawiona jako rozdzielcza. 

Czy wiesz, czy możliwe byłoby zintegrowanie tego z makro, tj.: wybranie monety w obszarze graficznym (awers lub inny), uruchomienie makra: rozwiązanie monety, a następnie jej otwarcie. 

 

Poniżej podam kod makra: 

'***************************************************************************­***
' ASSEMBLYOPEN. SWB autorstwa Teda Grieblinga
' To makro otworzy część będącą właścicielem lub podzespół (jeśli zostanie wybrany z listy
' feature scrambler) czegokolwiek wybranego w złożeniu.
' ***************************************************************************­***


Dim swApp As Object
Przyciemnij activeDocument jako obiekt
Dim selEntity As Object
Dim selType As Long
Dim SelMgr As Obiekt
Dim owningComponent As Object
Dim componentName As Ciąg
Przyciemnij część jako obiekt
Przyciemnij ścieżkę komponentu jako ciąg


Const swDocPART = 1
Const swDocASSEMBLY = 2
Const swDocDRAWING = 3


Sub main()
Ustaw swApp = CreateObject("SldWorks.Application")
Ustaw activeDocument = swApp.ActiveDoc


Upewnij się, że to nie jest część.
Jeśli (activeDocument.GetType = swDocPART) Następnie
    Wyjdź z subwoofera
Zakończ jeżeli:


' Zrobić coś innego do rysunków?
Jeśli (activeDocument.GetType = swDocDRAWING) Następnie
    Wyjdź z subwoofera
Zakończ jeżeli:


' Pobierz interfejs SelectionMgr
Ustaw SelMgr = activeDocument.SelectionManager


' Pobieranie wybranego obiektu Entity
Ustaw selEntity = SelMgr.GetSelectedObject3(1)


selType = SelMgr.GetSelectedObjectType2(1)

'MsgBox selType

' Typy, które sprawiają, że późniejsze części barf
If (selType = 0) Or (selType = 42) Or (selType = 69) Then
    Wyjdź z subwoofera
Zakończ jeżeli:


' Działa to doskonale dla komponentów wybranych z szyfratora funkcji
Jeśli (SelMgr.GetSelectedObjectType2(1) = 20) Then
    – Tak!
    activeDocument.OpenCompFile
    Wyjdź z subwoofera
Zakończ jeżeli:


'Wyodrębnij nazwę ścieżki z wybranej jednostki.
Jeśli (activeDocument.GetType = swDocASSEMBLY) Następnie
    ' Pobierz obiekt Component będący właścicielem
    Set owningComponent = selEntity.GetComponent
    ' Pobierz nazwę ścieżki komponentu
    componentpath = owningComponent.GetPathName
    ' Ścieżka komponentu MsgBox
    ' Otwórz część w jej własnym oknie, tak!
    
         Ustaw część = swApp.ActivateDoc(ścieżka komponentu)
     
    Wyjdź z subwoofera
Zakończ jeżeli:
Koniec subwoofera

 

Z góry dziękuję za odpowiedzi. 

Pozdrowienia

Witam

Jest to normalne, ponieważ "rozwiązane" części są ładowane do pamięci po otwarciu złożenia.

Nie mam przy sobie komputera, więc nie mogę zmienić makra. 

To, co możesz zrobić, to pobrać ścieżkę swojej części i otworzyć ją bez przekazywania jej rozwiązanej w swoim złożeniu. Myślę, że jeśli chodzi o pamięć, lepiej jest to zrobić w ten sposób, zwłaszcza jeśli jest to duży montaż.

Pozdrowienia.