Hallo ihr alle
Wie breche ich die Grafikaktualisierung auf dem Solidworks VBA ab? wie im VBA-Excel-Code "application.screenupdating = false"
Vielen Dank im Voraus für Ihre Antworten,
Julianisch.
Hallo ihr alle
Wie breche ich die Grafikaktualisierung auf dem Solidworks VBA ab? wie im VBA-Excel-Code "application.screenupdating = false"
Vielen Dank im Voraus für Ihre Antworten,
Julianisch.
Hallo
Indem ich ein Makro aufzeichnete und mit der rechten Maustaste auf den Namen einer Assembly klickte und "Automatische Neuerstellung unterbrechen " auswählte, erhielt ich diesen Code:
Dimmen swApp als Objekt
Teil als Objekt dimmen
Dim boolstatus als boolescher Wert
Dim longstatus As Long, longwarnings As Long
Sub main()
swApp = _ setzen
Anwendung.SldWorks
Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("Asemblage.SLDASM", "KOMPONENTE", 0, 0, 0, Falsch, 0, Nichts, 0)
Part.EnableAssemblyRebuild = Wahr
Ende Sub
Der zu verwendende Befehl lautet daher Part.EnableAssemblyRebuild = True
Hallo
OptiSW: Das ist nicht das, was Julien sucht.
Der Befehl EnableAssemblyRebuild hält die Neuerstellung nur wie hier gezeigt an: http://help.solidworks.com/2016/english/api/sldworksapi/solidworks.interop.sldworks~solidworks.interop.sldworks.iassemblydoc~enableassemblyrebuild.html
Julianisch:
Hier werden mehrere Optionen beschrieben: http://help.solidworks.com/2016/english/api/sldworksapi/solidworks_visible_or_background_example_vb.htm
Persönlich benutze ich: swApp. Sichtbar = Wahr. Dies entspricht jedoch nicht ganz dem ScreenUdating von Excel. Da dies die Anwendung unsichtbar macht, anstatt sie einzufrieren...
Entschuldigung für die späte Antwort,
In der Tat ist es nicht ganz das, wonach ich suche,
Ich habe im Internet recherchiert und es gibt dieses "EnableGraphicsUpdate", aber es funktioniert nicht in meinem Code.
Hallo
Normal, da die EnableGraphicsUpdate-Methode nicht für die Anwendung, sondern für die ModelView gilt, bei der es sich nur um die Darstellung des Modells handelt.
Siehe hier: http://help.solidworks.com/2016/english/api/sldworksapi/solidworks.interop.sldworks~solidworks.interop.sldworks.imodelview~enablegraphicsupdate.html
Hallo
Es gibt also keinen Code, der die grafische Aktualisierung für die Anwendung direkt verhindert.
Das Ziel war es, Rechenzeit zu sparen, da ich auf meinem Makro eine Notiz einfüge, eine PDF-Datei der Zeichnung erstelle und die Notiz am Ende lösche.
wenn es keine Lösung gibt, schade, werde ich das Makro so lassen, wie es jetzt ist,
Vielen Dank für Ihre Antworten,