Autor
|
Thema: Problem mehrere Fenster (825 / mal gelesen)
|
Aitec Mitglied
Beiträge: 30 Registriert: 25.04.2018 Catia V5-R2016
|
erstellt am: 13. Jun. 2018 16:29 <-- editieren / zitieren --> Unities abgeben:
Hallo CAD Community, ich stehe vor einem Problem, bei dem mir keine schöne Lösung einfällt. Dabei geht es um folgendes. Ich führe ein Makro aus welches verschiedene Operationen mit verschiedene Parts bzw. Produkten durchführt. Im laufe des Makros muss der User zwei verschiedene Punkte selektieren. Diese können im ersten Fall direkt mit im geöffneten Produkt zu finden sein. Jedoch können diese auch in einem zweiten Fenster geöffnet sein. Und hier liegt das Problem. Wie kann ich das Makro so gestallten, dass der User keine überflüssigen Selektionen tätigen oder MsgBoxen beantworten muss. Oder komme ich da nicht drum herum? VG und besten Dank schonmal! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 13. Jun. 2018 17:17 <-- editieren / zitieren --> Unities abgeben: Nur für Aitec
Servus In welchem Dokument willst du denn die Selektion vornehmen? Wenn du weist dass du im Dokument aus dem anderen Fenster geöffnet ist was selektieren willst, kannst du ja das Fenster aktivieren und dann sie Userselektion starten Oder ja nach Anwendungsfall auch SelectElement4 nutzen mit der auch in einem nicht aktiven Fenster was gewählt werden kann. Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Aitec Mitglied
Beiträge: 30 Registriert: 25.04.2018 Catia V5-R2016
|
erstellt am: 14. Jun. 2018 08:53 <-- editieren / zitieren --> Unities abgeben:
Hallo bgrittmann, Danke für die Antwort. Leider habe ich keine Möglichkeit vorher festzustellen ob die relevante Datei in einem weiteren Window oder innerhalb des aktiven Windows geöffnet ist. Da sich die Datei Namen immer anders sind, oder der Anwender gleichzeitig noch weitere Windows geöffnet haben könnte. Ich habe jetzt aber die Methode mit SelectElement4 ausprobiert. Dazu habe ich zwei Fenster nebeneinander geöffnet. Leider greift die selection nicht und mein Makro gibt mir immer wieder "Selektion gescheitert" aus. Was mache ich falsch?
Code: Selektion_Wiederholen1: oSel.Clear pSelection.Clear Dim KFilter(1) KFilter(0) = "Point" KFilter(1) = "HybridShapeExtremum" MsgBox "Bitte wählen Sie jetzt den Punkt ML1 oder ML2 aus.", 0, "ML1 oder ML2 selektieren" pSelection = oSel.SelectElement4(KFilter, "Bitte Karosserie auswählen", False) If pSelection = "Normal" Then Set Point_1 = oSel.Item2(1).Value Else MsgBox "Selektion gescheitert" GoTo Selektion_Wiederholen1 End If Ans1 = MsgBox("Sie haben folgenden Punkt selektiert:" & " " & Point_1.Name & Chr(13) & Chr(13) & "Bitte bestätigen sie mit" & " " & "Ja" & " " & "wenn die getroffene Auswahl korrekt ist.", vbYesNo, "Kontrolle der selektion.") If Ans1 = 7 Then GoTo Selektion_Wiederholen1 End If
Wenn ich mit SelectElement2 arbeite habe ich das Problem, das sobald ich in das andere Fenster Clicke, dies schon als selection gewertet wird. VG und besten Dank ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 14. Jun. 2018 14:05 <-- editieren / zitieren --> Unities abgeben: Nur für Aitec
Servus Zu SelectElement4 bitte in Doku schauen da ist eine Beispiel drin. Wie wäre es wenn du nur eine Selektion im aktuellen Fenster zulässt (also Ergebnis der Selektion prüfen und entsprechende darauf reagieren)? Was hast du denn genau vor? Brauchst du die Selektion im Product-Kontext oder im Part? Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |