property Element.ShowHandCursorOn as ShowHandCursorOnEnum
Specifies whether the hand cursor is shown when hovering the element.

TypeDescription
ShowHandCursorOnEnum A ShowHandCursorOnEnum expression that specifies the parts of the element where the hand cursor is shown when the mouse-pointer hovers it.
By default, the ShowHandCursorOn property is exShowHandCursorAnchorAll, which indicates that the hand cursor is shown when user hovers any anchor element (<a>). Use the Caption or ExtraCaption property to display hyperlinks or anchors in the element. The AnchorClick event is fired once the user clicks an anchor element. The control fires the HandCursorClick event when the user clicks a part of the element. The Hit parameter of the HandCursorClick specifies the part of the element being clicked, while the Key parameter specifies a value associated with the part being clicked as listed bellow:

The above flags can be combined with the following flags:

The following samples shows how you can handle clicking an icon or a picture of the element:

VBA (MS Access, Excell...)

' HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
Private Sub Surface1_HandCursorClick(ByVal Element As Object,ByVal Hit As Long,ByVal Key As Variant)
	With Surface1
		Debug.Print( Key )
	End With
End Sub

With Surface1
	.Images "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0" & _
"/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1" & _
"/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qO" & _
"x3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" & _
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	.HTMLPicture("pic1") = "c:\exontrol\images\zipdisk.gif"
	.HTMLPicture("pic2") = "c:\exontrol\images\auction.gif"
	With .Elements.Add("Caption")
		.Pictures = "1,2/pic1/pic2"
		.PicturesAlign = 33
		.ShowHandCursorOn = 771 ' ShowHandCursorOnEnum.exShowHandCursorExtraPictures Or ShowHandCursorOnEnum.exShowHandCursorPictures Or ShowHandCursorOnEnum.exShowHandCursorIcon Or ShowHandCursorOnEnum.exShowHandCursorPicture
		.CaptionAlign = 1
	End With
End With

VB6

' HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
Private Sub Surface1_HandCursorClick(ByVal Element As EXSURFACELibCtl.IElement,ByVal Hit As EXSURFACELibCtl.ShowHandCursorOnEnum,ByVal Key As Variant)
	With Surface1
		Debug.Print( Key )
	End With
End Sub

With Surface1
	.Images "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0" & _
"/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1" & _
"/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qO" & _
"x3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" & _
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	.HTMLPicture("pic1") = "c:\exontrol\images\zipdisk.gif"
	.HTMLPicture("pic2") = "c:\exontrol\images\auction.gif"
	With .Elements.Add("Caption")
		.Pictures = "1,2/pic1/pic2"
		.PicturesAlign = exBottomCenter
		.ShowHandCursorOn = ShowHandCursorOnEnum.exShowHandCursorExtraPictures Or ShowHandCursorOnEnum.exShowHandCursorPictures Or ShowHandCursorOnEnum.exShowHandCursorIcon Or ShowHandCursorOnEnum.exShowHandCursorPicture
		.CaptionAlign = exTopCenter
	End With
End With

VB.NET

' HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
Private Sub Exsurface1_HandCursorClick(ByVal sender As System.Object,ByVal Element As exontrol.EXSURFACELib.Element,ByVal Hit As exontrol.EXSURFACELib.ShowHandCursorOnEnum,ByVal Key As Object) Handles Exsurface1.HandCursorClick
	With Exsurface1
		Debug.Print( Key )
	End With
End Sub

With Exsurface1
	.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0" & _
"/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1" & _
"/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qO" & _
"x3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" & _
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
	.set_HTMLPicture("pic1","c:\exontrol\images\zipdisk.gif")
	.set_HTMLPicture("pic2","c:\exontrol\images\auction.gif")
	With .Elements.Add("Caption")
		.Pictures = "1,2/pic1/pic2"
		.PicturesAlign = exontrol.EXSURFACELib.ContentAlignmentEnum.exBottomCenter
		.ShowHandCursorOn = exontrol.EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorExtraPictures Or exontrol.EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPictures Or exontrol.EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorIcon Or exontrol.EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPicture
		.CaptionAlign = exontrol.EXSURFACELib.ContentAlignmentEnum.exTopCenter
	End With
End With

VB.NET for /COM

' HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
Private Sub AxSurface1_HandCursorClick(ByVal sender As System.Object, ByVal e As AxEXSURFACELib._ISurfaceEvents_HandCursorClickEvent) Handles AxSurface1.HandCursorClick
	With AxSurface1
		Debug.Print( e.key )
	End With
End Sub

With AxSurface1
	.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0" & _
"/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1" & _
"/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qO" & _
"x3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" & _
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
	.set_HTMLPicture("pic1","c:\exontrol\images\zipdisk.gif")
	.set_HTMLPicture("pic2","c:\exontrol\images\auction.gif")
	With .Elements.Add("Caption")
		.Pictures = "1,2/pic1/pic2"
		.PicturesAlign = EXSURFACELib.ContentAlignmentEnum.exBottomCenter
		.ShowHandCursorOn = EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorExtraPictures Or EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPictures Or EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorIcon Or EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPicture
		.CaptionAlign = EXSURFACELib.ContentAlignmentEnum.exTopCenter
	End With
End With

C++

// HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
void OnHandCursorClickSurface1(LPDISPATCH Element,long Hit,VARIANT Key)
{
	/*
		Copy and paste the following directives to your header file as
		it defines the namespace 'EXSURFACELib' for the library: 'ExSurface 1.0 Control Library'
		#import <ExSurface.dll>
		using namespace EXSURFACELib;
	*/
	EXSURFACELib::ISurfacePtr spSurface1 = GetDlgItem(IDC_SURFACE1)->GetControlUnknown();
	OutputDebugStringW( L"Key" );
}

EXSURFACELib::ISurfacePtr spSurface1 = GetDlgItem(IDC_SURFACE1)->GetControlUnknown();
spSurface1->Images(_bstr_t("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0") +
"/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1" +
"/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qO" +
"x3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" +
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=");
spSurface1->PutHTMLPicture(L"pic1","c:\\exontrol\\images\\zipdisk.gif");
spSurface1->PutHTMLPicture(L"pic2","c:\\exontrol\\images\\auction.gif");
EXSURFACELib::IElementPtr var_Element = spSurface1->GetElements()->Add("Caption",vtMissing,vtMissing,vtMissing,vtMissing,vtMissing);
	var_Element->PutPictures(L"1,2/pic1/pic2");
	var_Element->PutPicturesAlign(EXSURFACELib::exBottomCenter);
	var_Element->PutShowHandCursorOn(EXSURFACELib::ShowHandCursorOnEnum(EXSURFACELib::exShowHandCursorExtraPictures | EXSURFACELib::exShowHandCursorPictures | EXSURFACELib::exShowHandCursorIcon | EXSURFACELib::exShowHandCursorPicture));
	var_Element->PutCaptionAlign(EXSURFACELib::exTopCenter);

C++ Builder

// HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
void __fastcall TForm1::Surface1HandCursorClick(TObject *Sender,Exsurfacelib_tlb::IElement *Element,Exsurfacelib_tlb::ShowHandCursorOnEnum Hit,Variant Key)
{
	OutputDebugString( L"Key" );
}

Surface1->Images(TVariant(String("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0") +
"/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1" +
"/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qO" +
"x3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" +
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="));
Surface1->HTMLPicture[L"pic1"] = TVariant("c:\\exontrol\\images\\zipdisk.gif");
Surface1->HTMLPicture[L"pic2"] = TVariant("c:\\exontrol\\images\\auction.gif");
Exsurfacelib_tlb::IElementPtr var_Element = Surface1->Elements->Add(TVariant("Caption"),TNoParam(),TNoParam(),TNoParam(),TNoParam(),TNoParam());
	var_Element->Pictures = L"1,2/pic1/pic2";
	var_Element->PicturesAlign = Exsurfacelib_tlb::ContentAlignmentEnum::exBottomCenter;
	var_Element->ShowHandCursorOn = Exsurfacelib_tlb::ShowHandCursorOnEnum::exShowHandCursorExtraPictures | Exsurfacelib_tlb::ShowHandCursorOnEnum::exShowHandCursorPictures | Exsurfacelib_tlb::ShowHandCursorOnEnum::exShowHandCursorIcon | Exsurfacelib_tlb::ShowHandCursorOnEnum::exShowHandCursorPicture;
	var_Element->CaptionAlign = Exsurfacelib_tlb::ContentAlignmentEnum::exTopCenter;

C#

// HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
private void exsurface1_HandCursorClick(object sender,exontrol.EXSURFACELib.Element Element,exontrol.EXSURFACELib.ShowHandCursorOnEnum Hit,object Key)
{
	System.Diagnostics.Debug.Print( Key.ToString() );
}
//this.exsurface1.HandCursorClick += new exontrol.EXSURFACELib.exg2antt.HandCursorClickEventHandler(this.exsurface1_HandCursorClick);

exsurface1.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0" +
"/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1" +
"/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qO" +
"x3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" +
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=");
exsurface1.set_HTMLPicture("pic1","c:\\exontrol\\images\\zipdisk.gif");
exsurface1.set_HTMLPicture("pic2","c:\\exontrol\\images\\auction.gif");
exontrol.EXSURFACELib.Element var_Element = exsurface1.Elements.Add("Caption",null,null,null,null,null);
	var_Element.Pictures = "1,2/pic1/pic2";
	var_Element.PicturesAlign = exontrol.EXSURFACELib.ContentAlignmentEnum.exBottomCenter;
	var_Element.ShowHandCursorOn = exontrol.EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorExtraPictures | exontrol.EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPictures | exontrol.EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorIcon | exontrol.EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPicture;
	var_Element.CaptionAlign = exontrol.EXSURFACELib.ContentAlignmentEnum.exTopCenter;

JavaScript

<SCRIPT FOR="Surface1" EVENT="HandCursorClick(Element,Hit,Key)" LANGUAGE="JScript">
	alert( Key );
</SCRIPT>

<OBJECT classid="clsid:AC1DF7F4-0919-4364-8167-2F9B5155EA4B" id="Surface1"></OBJECT>

<SCRIPT LANGUAGE="JScript">
	Surface1.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0" +
	"/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1" +
	"/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qO" +
	"x3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" +
	"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=");
	Surface1.HTMLPicture("pic1") = "c:\\exontrol\\images\\zipdisk.gif";
	Surface1.HTMLPicture("pic2") = "c:\\exontrol\\images\\auction.gif";
	var var_Element = Surface1.Elements.Add("Caption",null,null,null,null,null);
		var_Element.Pictures = "1,2/pic1/pic2";
		var_Element.PicturesAlign = 33;
		var_Element.ShowHandCursorOn = 771;
		var_Element.CaptionAlign = 1;
</SCRIPT>

C# for /COM

// HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
private void axSurface1_HandCursorClick(object sender, AxEXSURFACELib._ISurfaceEvents_HandCursorClickEvent e)
{
	System.Diagnostics.Debug.Print( e.key.ToString() );
}
//this.axSurface1.HandCursorClick += new AxEXSURFACELib._ISurfaceEvents_HandCursorClickEventHandler(this.axSurface1_HandCursorClick);

axSurface1.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0" +
"/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1" +
"/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qO" +
"x3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" +
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=");
axSurface1.set_HTMLPicture("pic1","c:\\exontrol\\images\\zipdisk.gif");
axSurface1.set_HTMLPicture("pic2","c:\\exontrol\\images\\auction.gif");
EXSURFACELib.Element var_Element = axSurface1.Elements.Add("Caption",null,null,null,null,null);
	var_Element.Pictures = "1,2/pic1/pic2";
	var_Element.PicturesAlign = EXSURFACELib.ContentAlignmentEnum.exBottomCenter;
	var_Element.ShowHandCursorOn = EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorExtraPictures | EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPictures | EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorIcon | EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPicture;
	var_Element.CaptionAlign = EXSURFACELib.ContentAlignmentEnum.exTopCenter;

X++ (Dynamics Ax 2009)

// HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
void onEvent_HandCursorClick(COM _Element,int _Hit,COMVariant _Key)
{
	;
	print( _Key );
}

public void init()
{
	COM com_Element;
	anytype var_Element;
	str var_s;
	;

	super();

	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/";
	var_s = var_s + "oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/";
	var_s = var_s + "wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx";
	var_s = var_s + "3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN";
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=";
	exsurface1.Images(COMVariant::createFromStr(var_s));
	exsurface1.HTMLPicture("pic1","c:\\exontrol\\images\\zipdisk.gif");
	exsurface1.HTMLPicture("pic2","c:\\exontrol\\images\\auction.gif");
	var_Element = COM::createFromObject(exsurface1.Elements()).Add("Caption"); com_Element = var_Element;
		com_Element.Pictures("1,2/pic1/pic2");
		com_Element.PicturesAlign(33/*exBottomCenter*/);
		com_Element.ShowHandCursorOn(771/*exShowHandCursorExtraPictures | exShowHandCursorPictures | exShowHandCursorIcon | exShowHandCursorPicture*/);
		com_Element.CaptionAlign(1/*exTopCenter*/);
}

Delphi 8 (.NET only)

// HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
procedure TWinForm1.AxSurface1_HandCursorClick(sender: System.Object; e: AxEXSURFACELib._ISurfaceEvents_HandCursorClickEvent);
begin
	with AxSurface1 do
	begin
		OutputDebugString( e.key );
	end
end;

with AxSurface1 do
begin
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/' + 
	'oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/' + 
	'wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx' + 
	'3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	set_HTMLPicture('pic1','c:\exontrol\images\zipdisk.gif');
	set_HTMLPicture('pic2','c:\exontrol\images\auction.gif');
	with Elements.Add('Caption',Nil,Nil,Nil,Nil,Nil) do
	begin
		Pictures := '1,2/pic1/pic2';
		PicturesAlign := EXSURFACELib.ContentAlignmentEnum.exBottomCenter;
		ShowHandCursorOn := Integer(EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorExtraPictures) Or Integer(EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPictures) Or Integer(EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorIcon) Or Integer(EXSURFACELib.ShowHandCursorOnEnum.exShowHandCursorPicture);
		CaptionAlign := EXSURFACELib.ContentAlignmentEnum.exTopCenter;
	end;
end

Delphi (standard)

// HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
procedure TForm1.Surface1HandCursorClick(ASender: TObject; Element : IElement;Hit : ShowHandCursorOnEnum;Key : OleVariant);
begin
	with Surface1 do
	begin
		OutputDebugString( Key );
	end
end;

with Surface1 do
begin
	Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/' + 
	'oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/' + 
	'wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx' + 
	'3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 
	'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=');
	HTMLPicture['pic1'] := 'c:\exontrol\images\zipdisk.gif';
	HTMLPicture['pic2'] := 'c:\exontrol\images\auction.gif';
	with Elements.Add('Caption',Null,Null,Null,Null,Null) do
	begin
		Pictures := '1,2/pic1/pic2';
		PicturesAlign := EXSURFACELib_TLB.exBottomCenter;
		ShowHandCursorOn := Integer(EXSURFACELib_TLB.exShowHandCursorExtraPictures) Or Integer(EXSURFACELib_TLB.exShowHandCursorPictures) Or Integer(EXSURFACELib_TLB.exShowHandCursorIcon) Or Integer(EXSURFACELib_TLB.exShowHandCursorPicture);
		CaptionAlign := EXSURFACELib_TLB.exTopCenter;
	end;
end

VFP

*** HandCursorClick event - The uses clicks a part of the element that shows the had cursor. ***
LPARAMETERS Element,Hit,Key
	with thisform.Surface1
		DEBUGOUT( Key )
	endwith

with thisform.Surface1
	var_s = "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/"
	var_s = var_s + "oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/"
	var_s = var_s + "wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx"
	var_s = var_s + "3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN"
	var_s = var_s + "AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	.Images(var_s)
	.Object.HTMLPicture("pic1") = "c:\exontrol\images\zipdisk.gif"
	.Object.HTMLPicture("pic2") = "c:\exontrol\images\auction.gif"
	with .Elements.Add("Caption")
		.Pictures = "1,2/pic1/pic2"
		.PicturesAlign = 33
		.ShowHandCursorOn = 771 && ShowHandCursorOnEnum.exShowHandCursorExtraPictures Or ShowHandCursorOnEnum.exShowHandCursorPictures Or ShowHandCursorOnEnum.exShowHandCursorIcon Or ShowHandCursorOnEnum.exShowHandCursorPicture
		.CaptionAlign = 1
	endwith
endwith

dBASE Plus

/*
with (this.ACTIVEX1.nativeObject)
	HandCursorClick = class::nativeObject_HandCursorClick
endwith
*/
// The uses clicks a part of the element that shows the had cursor.
function nativeObject_HandCursorClick(Element,Hit,Key)
	local oSurface
	oSurface = form.Activex1.nativeObject
	? Str(Key) 
return

local oSurface,var_Element

oSurface = form.Activex1.nativeObject
oSurface.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oSurface.Template = [HTMLPicture("pic1") = "c:\exontrol\images\zipdisk.gif"] // oSurface.HTMLPicture("pic1") = "c:\exontrol\images\zipdisk.gif"
oSurface.Template = [HTMLPicture("pic2") = "c:\exontrol\images\auction.gif"] // oSurface.HTMLPicture("pic2") = "c:\exontrol\images\auction.gif"
var_Element = oSurface.Elements.Add("Caption")
	var_Element.Pictures = "1,2/pic1/pic2"
	var_Element.PicturesAlign = 33
	var_Element.ShowHandCursorOn = 771 /*exShowHandCursorExtraPictures | exShowHandCursorPictures | exShowHandCursorIcon | exShowHandCursorPicture*/
	var_Element.CaptionAlign = 1

XBasic (Alpha Five)

' The uses clicks a part of the element that shows the had cursor.
function HandCursorClick as v (Element as OLE::Exontrol.Surface.1::IElement,Hit as OLE::Exontrol.Surface.1::ShowHandCursorOnEnum,Key as A)
	Dim oSurface as P
	oSurface = topparent:CONTROL_ACTIVEX1.activex
	? Key 
end function

Dim oSurface as P
Dim var_Element as P

oSurface = topparent:CONTROL_ACTIVEX1.activex
oSurface.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oSurface.Template = "HTMLPicture(\"pic1\") = \"c:\exontrol\images\zipdisk.gif\"" ' oSurface.HTMLPicture("pic1") = "c:\exontrol\images\zipdisk.gif"
oSurface.Template = "HTMLPicture(\"pic2\") = \"c:\exontrol\images\auction.gif\"" ' oSurface.HTMLPicture("pic2") = "c:\exontrol\images\auction.gif"
var_Element = oSurface.Elements.Add("Caption")
	var_Element.Pictures = "1,2/pic1/pic2"
	var_Element.PicturesAlign = 33
	var_Element.ShowHandCursorOn = 771 'exShowHandCursorExtraPictures + exShowHandCursorPictures + exShowHandCursorIcon + exShowHandCursorPicture
	var_Element.CaptionAlign = 1

Visual Objects

METHOD OCX_Exontrol1HandCursorClick(Element,Hit,Key) CLASS MainDialog
	// HandCursorClick event - The uses clicks a part of the element that shows the had cursor.
	OutputDebugString(String2Psz( AsString(Key) ))
RETURN NIL

local var_Element as IElement

oDCOCX_Exontrol1:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oDCOCX_Exontrol1:[HTMLPicture,"pic1"] := "c:\exontrol\images\zipdisk.gif"
oDCOCX_Exontrol1:[HTMLPicture,"pic2"] := "c:\exontrol\images\auction.gif"
var_Element := oDCOCX_Exontrol1:Elements:Add("Caption",nil,nil,nil,nil,nil)
	var_Element:Pictures := "1,2/pic1/pic2"
	var_Element:PicturesAlign := exBottomCenter
	var_Element:ShowHandCursorOn := exShowHandCursorExtraPictures | exShowHandCursorPictures | exShowHandCursorIcon | exShowHandCursorPicture
	var_Element:CaptionAlign := exTopCenter

PowerBuilder

/*begin event HandCursorClick(oleobject Element,long Hit,any Key) - The uses clicks a part of the element that shows the had cursor.*/
/*
	OleObject oSurface
	oSurface = ole_1.Object
	MessageBox("Information",string( String(Key) ))
*/
/*end event HandCursorClick*/

OleObject oSurface,var_Element

oSurface = ole_1.Object
oSurface.Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oSurface.HTMLPicture("pic1","c:\exontrol\images\zipdisk.gif")
oSurface.HTMLPicture("pic2","c:\exontrol\images\auction.gif")
var_Element = oSurface.Elements.Add("Caption")
	var_Element.Pictures = "1,2/pic1/pic2"
	var_Element.PicturesAlign = 33
	var_Element.ShowHandCursorOn = 771 /*exShowHandCursorExtraPictures | exShowHandCursorPictures | exShowHandCursorIcon | exShowHandCursorPicture*/
	var_Element.CaptionAlign = 1

Visual DataFlex

// The uses clicks a part of the element that shows the had cursor.
Procedure OnComHandCursorClick Variant llElement OLEShowHandCursorOnEnum llHit Variant llKey
	Forward Send OnComHandCursorClick llElement llHit llKey
	Showln llKey
End_Procedure

Procedure OnCreate
	Forward Send OnCreate
	Send ComImages "gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="
	Set ComHTMLPicture "pic1" to "c:\exontrol\images\zipdisk.gif"
	Set ComHTMLPicture "pic2" to "c:\exontrol\images\auction.gif"
	Variant voElements
	Get ComElements to voElements
	Handle hoElements
	Get Create (RefClass(cComElements)) to hoElements
	Set pvComObject of hoElements to voElements
		Variant voElement
		Get ComAdd of hoElements "Caption" Nothing Nothing Nothing Nothing Nothing to voElement
		Handle hoElement
		Get Create (RefClass(cComElement)) to hoElement
		Set pvComObject of hoElement to voElement
			Set ComPictures of hoElement to "1,2/pic1/pic2"
			Set ComPicturesAlign of hoElement to OLEexBottomCenter
			Set ComShowHandCursorOn of hoElement to (OLEexShowHandCursorExtraPictures + OLEexShowHandCursorPictures + OLEexShowHandCursorIcon + OLEexShowHandCursorPicture)
			Set ComCaptionAlign of hoElement to OLEexTopCenter
		Send Destroy to hoElement
	Send Destroy to hoElements
End_Procedure

XBase++

PROCEDURE OnHandCursorClick(oSurface,Element,Hit,Key)
	DevOut( Transform(Key,"") )
RETURN

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oElement
	LOCAL oSurface

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oSurface := XbpActiveXControl():new( oForm:drawingArea )
	oSurface:CLSID  := "Exontrol.Surface.1" /*{AC1DF7F4-0919-4364-8167-2F9B5155EA4B}*/
	oSurface:create(,, {10,60},{610,370} )

		oSurface:HandCursorClick := {|Element,Hit,Key| OnHandCursorClick(oSurface,Element,Hit,Key)} /*The uses clicks a part of the element that shows the had cursor.*/

		oSurface:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
		oSurface:SetProperty("HTMLPicture","pic1","c:\exontrol\images\zipdisk.gif")
		oSurface:SetProperty("HTMLPicture","pic2","c:\exontrol\images\auction.gif")
		oElement := oSurface:Elements():Add("Caption")
			oElement:Pictures := "1,2/pic1/pic2"
			oElement:PicturesAlign := 33/*exBottomCenter*/
			oElement:ShowHandCursorOn := 771/*exShowHandCursorExtraPictures+exShowHandCursorPictures+exShowHandCursorIcon+exShowHandCursorPicture*/
			oElement:CaptionAlign := 1/*exTopCenter*/

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN