Forum:AutoCAD ObjectARX und .NET
Thema:Objektauswahl wie beim Dehnen
Möchten Sie sich registrieren?
Wer darf antworten? Registrierte Benutzer können Beiträge verfassen.
Hinweise zur Registrierung Sie müssen registriert sein, um Beiträge oder Antworten auf Beiträge schreiben zu können.
Ihr Benutzername:
Ihr Kennwort:   Kennwort vergessen?
Anhang:    Datei(en) anhängen  <?>   Anhänge verwalten  <?>
Grafik für den Beitrag:                                                
                                                       
Ihre Antwort:

Fachbegriff
URL
Email
Fett
Kursiv
Durchgestr.
Liste
*
Bild
Zitat
Code

*HTML ist AUS
*UBB-Code ist AN
Smilies Legende
Netiquette

10 20 40

Optionen Smilies in diesem Beitrag deaktivieren.
Signatur anfügen: die Sie bei den Voreinstellungen angegeben haben.

Wenn Sie bereits registriert sind, aber Ihr Kennwort vergessen haben, klicken Sie bitte hier.

Bitte drücken Sie nicht mehrfach auf "Antwort speichern".

*Ist HTML- und/oder UBB-Code aktiviert, dann können Sie HTML und/oder UBB Code in Ihrem Beitrag verwenden.

T H E M A     A N S E H E N
Theo37

Beiträge: 410 / 0

ACAD 2016
WIN 7 64bit
Intel Xenon CPU E5-1620 3.60GHz
16GB RAM

Hallo,

ich bin bei GetEntity geblieben. Ich löse im PromptForEntityEnding-Event einen Fehler aus, den ich mit Try abfange. Bei Catch mache ich dann mit Selection weiter. Bestimmt keine schöne Lösung, funktioniert aber bisher ohne Fehler. Irgendwann mache ich auch noch ein Jig für diese Lösung, so dass der User auch noch ne Vorschau bekommt. Im Augenblick habe ich leider zu wenig Zeit und es wäre ja auch nur schön, aber nicht wirklich notwendig. Für den Fall dass es jemand interessiert, habe ich die entsprechenden Zeilen unten rein kopiert.

Gruß Theo

  AddHandler MyEditor.PromptForEntityEnding, AddressOf PFE
        Try
            Answer = MyEditor.GetEntity(Frage)
            RemoveHandler MyEditor.PromptForEntityEnding, AddressOf PFE
        Catch ex As Exception
            Dim MySelection As PromptSelectionResult
            Dim MyResult As PromptPointResult
            Dim MyOpts As PromptCornerOptions
            MyOpts = New PromptCornerOptions("Entgegengesetzte Ecke angeben:", LastPickedPoint)
            MyOpts.UseDashedLine = True
            MyResult = MyEditor.GetCorner(MyOpts)
            MySelection = MyEditor.SelectCrossingWindow(LastPickedPoint, MyResult.Value)
            If MySelection.Status = PromptStatus.OK Then
                SecondEntyIDcoll = New ObjectIdCollection
                For Each MyId In MySelection.Value.GetObjectIds
                    SecondEntyIDcoll.Add(MyId)
                Next
                RemoveHandler MyEditor.PromptForEntityEnding, AddressOf PFE
                Return True
            End If
        End Try
.
.
.
.
  Sub PFE(sender As Object, e As EditorInput.PromptForEntityEndingEventArgs)
        If e.Result.Status = PromptStatus.Error Then
            LastPickedPoint = e.Result.PickedPoint
            Throw New Exception()
        End If
    End Sub