Queries the specified location to determine if the point is over an
RasterImageListItem.
Syntax
Parameters
- x
- The horizontal position of the coordinate in client coordinates.
- y
- The vertical position of the coordinate in client coordinates.
Return Value
An
RasterImageListItem object under the given location, or null (Nothing in Visual Basic) if no
RasterImageListItem is under the location.
Example
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.
Visual Basic | Copy Code |
---|
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 |
C# | Copy Code |
---|
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";
} |
Requirements
Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7
See Also