Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Send Keys - Save As Fenster

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Send Keys - Save As Fenster (922 / mal gelesen)
89marbru
Mitglied



Sehen Sie sich das Profil von 89marbru an!   Senden Sie eine Private Message an 89marbru  Schreiben Sie einen Gästebucheintrag für 89marbru

Beiträge: 25
Registriert: 13.06.2016

Catia V5R21
Windows 7
catvba

erstellt am: 07. Mrz. 2017 09:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Send_Keys.jpg

 
Guten Morgen zusammen,

mit Hilfe dieses Forums und den super Beiträgen konnte ich einen großen Teil meiner jetzigen Aufgabe automatisieren. An einer Stelle komme ich aber trotz intensiver Suchen nicht weiter und würde mich freuen, wenn Ihr mir ein paar Ideen zukommen lasst :-)

System:
- CATIA V5R21
- Code in catvba
- Windows 7

Problem:
- eine Fläche mit Hilfe der "Simplification" Funktion (DMU Workbench) automatisch zu vereinfachen
- ich habe sehr viele Flächen und möchte diese nacheinander vereinfachen lassen und speichern

Aktueller Stand:
- es wird immer ein Teil in eine Assembly (Product) geladen
- somit ist immer genau ein Teil im Product welches ich vereinfachen will
- es funktionieren alle Schritte bis auf der letzte zum Speichern (siehe Bild)

Code:
Sub CATMain()

CATIA.StartWorkbench "DMUOptimzer"

Set product2 = CATIA.ActiveDocument.Product.Products.Item(1)

Dim oActiveSelection As Selection
Set oActiveSelection = CATIA.ActiveDocument.Selection
oActiveSelection.Clear
oActiveSelection.Add product2
       
Set WshShell = CreateObject("WScript.Shell")
Call CATIA.StartCommand("Simplification")
               
CATIA.RefreshDisplay = True
'Call WshShell.AppActivate("Simplification", True)
           
Call WshShell.SendKeys("{TAB}", True)
Call WshShell.SendKeys("{ENTER}", True)
       
'Dieses ENTER funktioniert noch nicht       
Call WshShell.SendKeys("{ENTER}", True)

       
End Sub



Was ich schon versucht habe:
- viele ENTER zu machen so dass eines zum richtigen Zeitpunkt gesetzt werden müsste
- mit TAB, TAB zuvor auf "Save As" zu kommen und dann erst ein ENTER
- das Makro vor dem letztem ENTER zu verlangsamen


Ich würde mich sehr über ein paar Tipps und Ideen freuen.

Vielen Dank und einen schönen Tag :-)
Viele Grüße, Marcel

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 07. Mrz. 2017 09:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für 89marbru 10 Unities + Antwort hilfreich

Servus
Hat es einen Grund warum du dies mit SendKeys abarbeitest anstatt auf die entsprechenden Methoden direkt zuzugreifen?
Code:
Sub CATMain()

Dim RootProduct As Product
dim oProduct as Product
dim MyGroups as Groups
Dim MyGroup As Group
Dim oSimplifications As Simplifications
Dim docSimplified as Document

Set RootProduct = CATIA.ActiveDocument.Product
set oProduct = RootProduct.Products.item(1)

'Gruppe bilden und erstes Product aus der Productscollection zuweisen
set MyGroups  = RootProduct.GetTechnologicalObject("Groups")
Set MyGroup = MyGroups.Add
MyGroup.AddExplicit oProduct

'Vereinfachung bilden und exportieren
Set oSimplifications = RootProduct.GetTechnologicalObject("Simplifications")

set docSimplified  = oSimplifications.ComputeSimplification (MyGroup, 0.1)

docSimplified.SaveAs "D:\test.cgr"

'Gruppe wieder löschen
MyGroups.Remove (MyGroup.Name)

End Sub


Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

89marbru
Mitglied



Sehen Sie sich das Profil von 89marbru an!   Senden Sie eine Private Message an 89marbru  Schreiben Sie einen Gästebucheintrag für 89marbru

Beiträge: 25
Registriert: 13.06.2016

Catia V5R21
Windows 7
catvba

erstellt am: 07. Mrz. 2017 09:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi Bernd,

tausend Dank mal wieder für deine mega Antwort. Mit der passenden Methode ist es natürlich viel einfacher und sicherer :-) funktioniert super.

Ehrlich gesagt tue ich mir noch schwer passende Methoden zu finden, wenn ich den Befehl bzw. die Workbench nicht kenne. Ich werde mich jetzt mal noch genauer mit der "V5 Automation" Dokumentation auseinandersetzen und dann beim nächsten Mal genauer auf die Suche gehen.

Bzw. getreu deinem Motto "Warum einfach, wenn es auch kompliziert geht" 

Danke nochmal :-) und einen schönen Tag.

Viele Grüße,
Marcel

[Diese Nachricht wurde von 89marbru am 07. Mrz. 2017 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz