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 > RasterImageList Class : HitTest Method |
public RasterImageListItem HitTest( int x, int y )
'Declaration Public Function HitTest( _ ByVal x As Integer, _ ByVal y As Integer _ ) As RasterImageListItem
'Usage Dim instance As RasterImageList Dim x As Integer Dim y As Integer Dim value As RasterImageListItem value = instance.HitTest(x, y)
public: RasterImageListItem^ HitTest( int x, int y )
This example will create and populate a RasterImageList control, and then performs hittesting when the user right clicks on the control and shows the item information.
Imports Leadtools.WinForms Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.Drawing Private Class MyForm4 : Inherits Form Private imageList As RasterImageList Private codecs As RasterCodecs Public Sub New(ByVal title As String) Text = title ' Set the size of the form Size = New Size(400, 200) ' Create a new RasterImageList control imageList = New RasterImageList() imageList.Dock = DockStyle.Fill imageList.SelectionMode = RasterImageListSelectionMode.Single imageList.Size = Size Controls.Add(imageList) imageList.BringToFront() codecs = New RasterCodecs() ' Create three items Dim imagesPath As String = LEAD_VARS.ImagesDir For i As Integer = 0 To 2 ' Load the image Dim index As Integer = i + 1 Dim imageFileName As String = Path.Combine(imagesPath, "ImageProcessingDemo\Image" & index.ToString() & ".cmp") Dim image As RasterImage = codecs.Load(imageFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1) Dim item As RasterImageListItem = New RasterImageListItem(image, 1, "Item" & index.ToString()) ' Select the first item If i = 0 Then item.Selected = True End If ' Add the item to the image list imageList.Items.Add(item) Next i ' Add a handler to the MouseDown event AddHandler imageList.MouseDown, AddressOf rasterImageList_MouseDown ' Add the RasterImageList to the control collection. Controls.Add(imageList) End Sub Private Sub rasterImageList_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) ' Check for right button clicks If e.Button = Windows.Forms.MouseButtons.Right Then ' Check if any item is under the cursor poisition Dim imageList As RasterImageList = CType(IIf(TypeOf sender Is RasterImageList, sender, Nothing), RasterImageList) Dim item As RasterImageListItem = imageList.HitTest(e.X, e.Y) If Not item Is Nothing Then ' Yes, show the item text in a message box MessageBox.Show(Me, item.Text) End If End If End Sub End Class Public Sub RasterImageList_HitTest(ByVal title As String) Dim form As MyForm4 = New MyForm4(title) form.ShowDialog() End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
using Leadtools.WinForms; using Leadtools; using Leadtools.Codecs; using Leadtools.Drawing; class MyForm4 : Form { RasterImageList imageList; RasterCodecs codecs; public MyForm4(string title) { Text = title; // Set the size of the form Size = new Size(400, 200); // Create a new RasterImageList control imageList = new RasterImageList(); imageList.Dock = DockStyle.Fill; imageList.SelectionMode = RasterImageListSelectionMode.Single; imageList.Size = Size; Controls.Add(imageList); imageList.BringToFront(); codecs = new RasterCodecs(); // Create three items string imagesPath = LEAD_VARS.ImagesDir; for(int i = 0; i < 3; i++) { // Load the image int index = i + 1; string imageFileName = Path.Combine(imagesPath, @"ImageProcessingDemo\Image" + index.ToString() + ".cmp"); RasterImage image = codecs.Load(imageFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1); RasterImageListItem item = new RasterImageListItem(image, 1, "Item" + index.ToString()); // Select the first item if(i == 0) item.Selected = true; // Add the item to the image list imageList.Items.Add(item); } // Add a handler to the MouseDown event imageList.MouseDown += new MouseEventHandler(rasterImageList_MouseDown); // Add the RasterImageList to the control collection. Controls.Add(imageList); } private void rasterImageList_MouseDown(object sender, MouseEventArgs e) { // Check for right button clicks if(e.Button == MouseButtons.Right) { // Check if any item is under the cursor poisition RasterImageList imageList = sender as RasterImageList; RasterImageListItem item = imageList.HitTest(e.X, e.Y); if(item != null) { // Yes, show the item text in a message box MessageBox.Show(this, item.Text); } } } } public void RasterImageList_HitTest(string title) { MyForm4 form = new MyForm4(title); form.ShowDialog(); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }