How to Break loop for enter key

How to Break loop for enter key

Anonymous
Not applicable
821 Views
2 Replies
Message 1 of 3

How to Break loop for enter key

Anonymous
Not applicable

I tried the following code posted in the forum, but i need to know how to break the loop when right click/ Enter Key is pressed.

 

Following is the code i used:

 

Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument

        Dim acCurEd As Editor = acDoc.Editor

        Using lock As DocumentLock = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.LockDocument

            Dim ppo As PromptPointOptions = New PromptPointOptions(vbCrLf & "Select Insertion Point:")

            Dim ppr As PromptPointResult = acCurEd.GetPoint(ppo)

            Dim _startpoint, _endpoint As Point3d

            If ppr.Status = PromptStatus.OK Then

                _startpoint = ppr.Value

            End If

 

            AddLayer(_LayName, True) 

            Dim i As Integer = 0

 

            While i = 0

                Dim acCurDb As Database = acDoc.Database

 

 

                Using acTrans As Transaction = acCurDb.TransactionManager.StartTransaction()

                    Dim _newentLine As New Line

                    ppo = New PromptPointOptions(vbCrLf & "Select Next Point")

 

                    ppo.BasePoint = _startpoint    

                    ppo.UseBasePoint = True       

 

                    ppr = acCurEd.GetPoint(ppo)

 

 

                    If ppr.Status = PromptStatus.OK Then

                        _endpoint = ppr.Value

                    Else                       

                        i = 1

                        Continue While

                    End If

 

                    _newentLine.ColorIndex = _ColorIndex

                    If _LineType.ToLower = "continuous" Then

                    ElseIf _LineType.ToLower = "byblock" Then

                    Else

                        _LineType = "ByLayer"

                    End If

 

                    _newentLine.StartPoint = _startpoint

                    _newentLine.EndPoint = _endpoint

 

                    _newentLine.Linetype = _LineType

                    _newentLine.LineWeight = _LineWeight

                    _newentLine.Layer = _LayName

 

 

                    Dim acBlkTbl As BlockTable = acTrans.GetObject(acCurDb.BlockTableId, OpenMode.ForWrite)

                    Dim acBlkTblRec As BlockTableRecord = acTrans.GetObject(acBlkTbl(BlockTableRecord.ModelSpace), OpenMode.ForWrite)

                    acBlkTblRec.AppendEntity(_newentLine)

                    acTrans.AddNewlyCreatedDBObject(_newentLine, True)

                    acTrans.Commit()

                    acBlkTblRec.Dispose()

 

                    acBlkTbl.Dispose()

 

                    _startpoint = _endpoint

                    _newentLine.Dispose()

 

                End Using

                acCurDb.Dispose()

            End While

        End Using

 

0 Likes
Accepted solutions (1)
822 Views
2 Replies
Replies (2)
Message 2 of 3

Alfred.NESWADBA
Consultant
Consultant

Hi,

 

>> but i need to know how to break the loop when right click/ Enter Key is pressed

check the possible values in this line

If ppr.Status = .....

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2026
------------------------------------------------------------------------------------

(not an Autodesk consultant)
0 Likes
Message 3 of 3

chockalingam
Advocate
Advocate
Accepted solution

Use the following line which helps you to break the loop for right click/ enter key

 

 

ppo.AllowNone = True

0 Likes