Determines if the user is currently involved in an interactive operation.
Syntax
Visual Basic (Usage) | Copy Code |
---|
Dim instance As RasterImageViewer
Dim value As Boolean
value = instance.IsInteractiveModeBusy
|
Return Value
true if the user is currently involved in an interactive operation, false otherwise.
Example
This sets the interactive mode to draw a rectangular region.
If the mouse is dragged up or to the left, the interactive mode is cancelled.
Visual Basic | Copy Code |
---|
Private Sub MyRasterViewerRectangleEventHandler(ByVal sender As Object, ByVal e As RasterViewerRectangleEventArgs)
Dim viewer As RasterImageViewer = CType(IIf(TypeOf sender Is RasterImageViewer, sender, Nothing), RasterImageViewer)
Dim ee As RasterViewerRectangleEventArgs = New RasterViewerRectangleEventArgs(e.Status, e.Rectangle)
If ((e.Rectangle.Left > e.Rectangle.Right) OrElse (e.Rectangle.Top > e.Rectangle.Bottom)) AndAlso e.Status = RasterViewerInteractiveStatus.End Then
e.Cancel = True
viewer.Invalidate()
If (Not viewer.IsInteractiveModeBusy) Then
MessageBox.Show("Interactive mode (Rectangular region) cancelled")
viewer.InteractiveMode = RasterViewerInteractiveMode.None
End If
End If
Console.WriteLine("" & e.Rectangle.Left & ", " & e.Rectangle.Top & ", " & e.Rectangle.Right & ", " & e.Rectangle.Bottom)
End Sub
Public Sub RasterImageViewer_IsInteractiveModeBusy(ByVal viewer As RasterImageViewer)
AddHandler viewer.InteractiveRegionRectangle, AddressOf MyRasterViewerRectangleEventHandler
viewer.InteractiveMode = RasterViewerInteractiveMode.Region
viewer.InteractiveRegionType = RasterViewerInteractiveRegionType.Rectangle
MessageBox.Show("Interactive mode set to draw a rectangular region." & Constants.vbLf & "If mouse is dragged up or to the left, interactive mode is cancelled")
End Sub |
C# | Copy Code |
---|
private void MyRasterViewerRectangleEventHandler(object sender, RasterViewerRectangleEventArgs e) { RasterImageViewer viewer = sender as RasterImageViewer; RasterViewerRectangleEventArgs ee = new RasterViewerRectangleEventArgs(e.Status, e.Rectangle); if (((e.Rectangle.Left > e.Rectangle.Right) || (e.Rectangle.Top > e.Rectangle.Bottom)) && e.Status == RasterViewerInteractiveStatus.End) { e.Cancel = true; viewer.Invalidate(); if(!viewer.IsInteractiveModeBusy) { MessageBox.Show("Interactive mode (Rectangular region) cancelled"); viewer.InteractiveMode = RasterViewerInteractiveMode.None; } } Console.WriteLine(@"" + e.Rectangle.Left + ", " + e.Rectangle.Top + ", " + e.Rectangle.Right + ", " + e.Rectangle.Bottom); } public void RasterImageViewer_IsInteractiveModeBusy(RasterImageViewer viewer) { viewer.InteractiveRegionRectangle += new EventHandler<RasterViewerRectangleEventArgs>(MyRasterViewerRectangleEventHandler); viewer.InteractiveMode = RasterViewerInteractiveMode.Region; viewer.InteractiveRegionType = RasterViewerInteractiveRegionType.Rectangle; MessageBox.Show("Interactive mode set to draw a rectangular region.\nIf mouse is dragged up or to the left, interactive mode is cancelled"); } |
Remarks
Requirements
Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family
See Also