Leadtools.WinForms Namespace > RasterImageViewer Class : FloaterImage Property |
[BrowsableAttribute(false)] public virtual RasterImage FloaterImage {get; set;}
'Declaration <BrowsableAttribute(False)> Public Overridable Property FloaterImage As RasterImage
'Usage Dim instance As RasterImageViewer Dim value As RasterImage instance.FloaterImage = value value = instance.FloaterImage
[BrowsableAttribute(false)] public: virtual property RasterImage^ FloaterImage { RasterImage^ get(); void set ( RasterImage^ value); }
The RasterImageViewer supports a floater image that can be dragged with the mouse when the value of the InteractiveMode is set to RasterViewerInteractiveMode.Floater
If the value of the floater image has a region, then only the region will be painted. This region can be animated by setting the value of the AnimateFloater property to true.
The position of the floater can be manipulated with the FloaterPosition property.
You can use the FloaterVisible property to control whether to view the floater.
Imports Leadtools.WinForms Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.ImageProcessing.Color Imports Leadtools.Drawing Private Sub viewer_InteractiveModeEnded(ByVal sender As Object, ByVal e As EventArgs) ' an interactive mode is done. check if its drawing a region ' if so, convert the region to a floater and set the interactive ' mode so that we can drag the floater Dim viewer As RasterImageViewer = CType(IIf(TypeOf sender Is RasterImageViewer, sender, Nothing), RasterImageViewer) If viewer.InteractiveMode = RasterViewerInteractiveMode.Region Then viewer.EnableTimer = True viewer.RegionToFloater() viewer.FloaterVisible = True viewer.AnimateFloater = True viewer.InteractiveMode = RasterViewerInteractiveMode.Floater ' delete the region since we do not need it anymore viewer.Image.MakeRegionEmpty() MessageBox.Show("Move the floater around, double click anywhere on the viewer to combine it with the image") End If End Sub Private Sub viewer_DoubleClick(ByVal sender As Object, ByVal e As EventArgs) ' check if the interactive mode is Floater, if so, ' combine the floater with the image. Dim viewer As RasterImageViewer = CType(IIf(TypeOf sender Is RasterImageViewer, sender, Nothing), RasterImageViewer) If viewer.InteractiveMode = RasterViewerInteractiveMode.Floater Then viewer.InteractiveMode = RasterViewerInteractiveMode.None viewer.CombineFloater(True, ImageProcessing.CombineFastCommandFlags.SourceCopy) ' get rid of the floater since we do not need it anymore viewer.FloaterImage = Nothing MessageBox.Show("The floater has been combined with the image") End If End Sub Public Sub RasterImageViewer_FloaterImage(ByVal viewer As RasterImageViewer) ' hook into the viewer InteractiveModeEnded and DoubleClick events AddHandler viewer.InteractiveModeEnded, AddressOf viewer_InteractiveModeEnded AddHandler viewer.DoubleClick, AddressOf viewer_DoubleClick ' first set the interactive mode to draw a freehand region viewer.InteractiveRegionType = RasterViewerInteractiveRegionType.Freehand viewer.InteractiveRegionCombineMode = RasterRegionCombineMode.Set viewer.InteractiveMode = RasterViewerInteractiveMode.Region MessageBox.Show("Draw a freehand region on the image") End Sub
using Leadtools.WinForms; using Leadtools; using Leadtools.Codecs; using Leadtools.ImageProcessing.Color; using Leadtools.Drawing; private void viewer_InteractiveModeEnded(object sender, EventArgs e) { // an interactive mode is done. check if its drawing a region // if so, convert the region to a floater and set the interactive // mode so that we can drag the floater RasterImageViewer viewer = sender as RasterImageViewer; if (viewer.InteractiveMode == RasterViewerInteractiveMode.Region) { viewer.EnableTimer = true; viewer.RegionToFloater(); viewer.FloaterVisible = true; viewer.AnimateFloater = true; viewer.InteractiveMode = RasterViewerInteractiveMode.Floater; // delete the region since we do not need it anymore viewer.Image.MakeRegionEmpty(); MessageBox.Show("Move the floater around, double click anywhere on the viewer to combine it with the image"); } } private void viewer_DoubleClick(object sender, EventArgs e) { // check if the interactive mode is Floater, if so, // combine the floater with the image. RasterImageViewer viewer = sender as RasterImageViewer; if (viewer.InteractiveMode == RasterViewerInteractiveMode.Floater) { viewer.InteractiveMode = RasterViewerInteractiveMode.None; viewer.CombineFloater(true, ImageProcessing.CombineFastCommandFlags.SourceCopy); // get rid of the floater since we do not need it anymore viewer.FloaterImage = null; MessageBox.Show("The floater has been combined with the image"); } } public void RasterImageViewer_FloaterImage(RasterImageViewer viewer) { // hook into the viewer InteractiveModeEnded and DoubleClick events viewer.InteractiveModeEnded += new EventHandler(viewer_InteractiveModeEnded); viewer.DoubleClick += new EventHandler(viewer_DoubleClick); // first set the interactive mode to draw a freehand region viewer.InteractiveRegionType = RasterViewerInteractiveRegionType.Freehand; viewer.InteractiveRegionCombineMode = RasterRegionCombineMode.Set; viewer.InteractiveMode = RasterViewerInteractiveMode.Region; MessageBox.Show("Draw a freehand region on the image"); }