Quantcast
Channel: All Revit API Forum posts
Viewing all articles
Browse latest Browse all 66666

Re: how to cancel pick objects operation from modeless form in revit, URGENT

$
0
0

Hi i want to know this exact close and release stuff for Pick Objects. Like we are using modeless form in execute of external command as following:

 

In Function Execute

-------------------------------------------

 

Using newform1 As New rfrm1(rdoc, rdocui, rdset, reles, reids)
newform1.Show(_hWndRevit)
newform1.formContinue = True

While newform1.formContinue
Dim sel As Selection = rdocui.Selection
Dim pickedRefs As New List(Of Reference)
Try
pickedRefs = sel.PickObjects(ObjectType.Element, New WallPickFilter(), _prompt)
Catch generatedExceptionName As Autodesk.Revit.Exceptions.OperationCanceledException
End Try

If (Not pickedRefs Is Nothing And pickedRefs.Any()) Then

reles.Clear()
reids.Clear()

For Each pickedRef As Reference In pickedRefs
Dim elem As Element = rdoc.GetElement(pickedRef)
If TypeOf (elem) Is Rvt.Wall Then
Dim rname As String = elem.Name
reles.Add(rname)
reids.Add(elem.Id)
End If
Next

newform1.fillSelected(reles, reids)
End If

End While
End Using

Return Autodesk.Revit.UI.Result.Succeeded

-----------------------------------------------------------------------

 

And i want to close this pick objects in this close/Closing event of form

 

Private Sub btn2_Click(sender As Object, e As EventArgs) Handles btn2.Click
formContinue = False
Me.Close()
'Dim _hWndRevit As WindowHandle = Nothing
'Dim ptr As IntPtr

'Dim processes As Process() = Process.GetProcessesByName("Revit")
'If 0 < processes.Length Then
' ptr = processes(0).MainWindowHandle
' _hWndRevit = New WindowHandle(ptr)
'End If

'SetForegroundWindow(ptr)
'SendKeys.SendWait("{ESC}")
'Press.Keys("{ESC}")
End Sub


Viewing all articles
Browse latest Browse all 66666

Trending Articles