Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Ein Product im Baum anclicken und weiter im script benutzen

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:  Ein Product im Baum anclicken und weiter im script benutzen (501 mal gelesen)
valyaleta
Mitglied
Dipl.-Ing.


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

Beiträge: 21
Registriert: 04.12.2008

erstellt am: 15. Dez. 2008 10:01    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

Hallo Zusammen!

Ich habe wieder eine Frage, und zwar....

ich habe bisher festdifinierte produktposition im Baum verwendet:

Set product2 = product1.Products.Item(3)

Ich möchte es aber vermeiden, um mein Script etwa zu verallgemeinern. (Dieser Product kann im Prinzip nicht nur an die 3. stelle sein, sondern auch irgendwo anderes)

Wie soll dann ein Script aussehen, wenn ich der User anfragen will ein Product selbst auszuwählen und dieser Auswahl weiter in meinem Script verwenden?

Vielen Dank für Eure Beiträge!

------------------
there will be light!

[Diese Nachricht wurde von valyaleta am 15. Dez. 2008 editiert.]

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

denyo_1
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 15. Dez. 2008 10:14    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 valyaleta 10 Unities + Antwort hilfreich

Hallo valyaleta,

das geht mit einem

Code:
selectedElement2
. Dazu sind aber noch mehrere Abfragen nötig. Hierbei wird im Script vorbestimmt welchen Typ der Anwender auswählen darf (in deinem Fall ein Product). Anschließend wird der Selektion das Object übergeben das der Anwender ausgewählt hat. Leider sind für CATIA CATParts innerhalb einer Produktstruktur auch Produkte. Deswegen muss dein Abschnitt wie folgt ausehen:

Code:

    Dim otype(0)
    Dim Auswahl
    Dim Check As Boolean

    Set oDoc = CATIA.ActiveDocument
    Set oSel = oDoc.Selection
    oSel.Clear
    otype(0) = "Product"
    oSel.Clear
    Box = MsgBox("Bitte wählen Sie ein Product aus", vbInformation + vbOKCancel, "Product auswählen")
    If Box = vbCancel Then
        Box = MsgBox("Sie haben die Selektion abgebrochen" + Chr(10) + _
        "Das Makro wird nun beendet!", vbCritical, "Abbruch durch Nutzer")
        Exit Sub
    End If
    Do
    Auswahl = oSel.SelectElement2(otype, "Bitte wählen Sie ein Product aus", False)
    If Auswahl = "Normal" Then
        Set oProd = oSel.Item(1).Value
        If TypeName(oProd.ReferenceProduct.Parent) <> "ProductDocument" Then
            Box = MsgBox("Bitte wählen Sie nur ein Product aus!", vbInformation, "Falsche Auswahl")
        Else
            Check = True
        End If
    Else
        Box = MsgBox("Sie haben die Selektion abgebrochen" + Chr(10) + _
        "Das Makro wird nun beendet!", vbCritical, "Abbruch durch Nutzer")
        Exit Sub
    End If
    Loop Until Check = True
    oSel.Clear


Anmerkungen:
1. Mit der oSel musst du dann weiterarbeiten. z.B.

Code:
Set product2 = oSel.Item(1).Value

2. Man kann damit alles mögliche Selektieren und auswerten. Dazu einfach den Typ in der Zeile otype(0) ändern

------------------
MFG Daniel

Die KATJA ist halt doch nur ne zickige Französin

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

valyaleta
Mitglied
Dipl.-Ing.


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

Beiträge: 21
Registriert: 04.12.2008

erstellt am: 15. Dez. 2008 11:54    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

vielen Dank! 

ich muss es nocht einpassen, aber sieht schon gar nicht schlecht!  )))

10 Unities dafür! 

------------------
there will be light!

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

valyaleta
Mitglied
Dipl.-Ing.


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

Beiträge: 21
Registriert: 04.12.2008

erstellt am: 15. Dez. 2008 13:51    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

Es funktioniert!!!! Yahoooooooooooooo!  ))))

------------------
there will be light!

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