|
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.
Copy Code
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"; }