Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.5.10
|
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.
This sample lets you create a floater, move the floater, and combine the floater with the image.
Imports Leadtools.WinForms Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.ImageProcessing.Color Imports Leadtools.Drawing Private Sub imageViewer_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 imageViewer_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 imageViewer_InteractiveModeEnded AddHandler viewer.DoubleClick, AddressOf imageViewer_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_FloaterInteractiveModeEnded(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_FloaterInteractiveModeEnded); 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"); }