Type | Description | |||
Item as Variant | A long expression that indicates the item's handle. | |||
ColIndex as Variant | A long expression that indicates the column's index, a string expression that indicates the column's caption or the column's key. | |||
Variant | A string expression that indicates the list of icons shown in the cell. |
The following VB sample assign first and third icon to the cell:
With ComboBox1.Items .CellImages(.ItemByIndex(0), 1) = "1,3" End With
The following VB sample displays the index of the icon being clicked in a cell:
Private Sub ComboBox1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim i As HITEM, h As HitTestInfoEnum, c As Long With ComboBox1 i = .ItemFromPoint(X / Screen.TwipsPerPixelX, Y / Screen.TwipsPerPixelY, c, h) End With If (i <> 0) Or (c <> 0) Then If exHTCellIcon = (h And exHTCellIcon) Then Debug.Print "The index of icon being clicked is: " & (h And &HFFFF0000) / 65536 End If End If End Sub
The following C++ sample displays the index of the icon being clicked in a cell:
void OnMouseUpCombobox1(short Button, short Shift, long X, long Y) { long c = 0, hit = 0, i = m_combobox.GetItemFromPoint( X, Y, &c, &hit ); if ( i != 0 ) if ( 68 /*exHTCellIcon*/ == (hit & 68 /*exHTCellIcon*/ ) ) { CString strOutput = V2S( &m_combobox.GetItems().GetCellCaption(COleVariant(i), COleVariant(c) ) ); strOutput += " Index = "; strOutput += V2S(COleVariant(hit >> 16)); strOutput += "\r\n"; OutputDebugString( strOutput ); } }
The following VB.NET sample displays the cell from the cursor:
Private Sub AxComboBox1_MouseUpEvent(ByVal sender As Object, ByVal e As AxEXCOMBOBOXLib._IComboBoxEvents_MouseUpEvent) Handles AxComboBox1.MouseUpEvent With AxComboBox1 Dim i As Integer, c As Integer, hit As EXCOMBOBOXLib.HitTestInfoEnum i = .get_ItemFromPoint(e.x, e.y, c, hit) If (i >= 0) Then If (hit And EXCOMBOBOXLib.HitTestInfoEnum.exHTCellIcon) = EXCOMBOBOXLib.HitTestInfoEnum.exHTCellIcon Then Debug.WriteLine(.Items.CellCaption(i, c) & " Index = " & ((hit And &HFFFF0000) / 65536)) End If End If End With End Sub
The following C# sample displays the cell from the cursor:
private void axComboBox1_MouseUpEvent(object sender, AxEXCOMBOBOXLib._IComboBoxEvents_MouseUpEvent e) { EXCOMBOBOXLib.HitTestInfoEnum hit; int c = 0, i = axComboBox1.get_ItemFromPoint(e.x, e.y, out c, out hit); if (i != 0) System.Diagnostics.Debug.WriteLine(axComboBox1.Items.get_CellCaption(i, c).ToString() + " Index = " + (Convert.ToUInt32(hit) >> 16).ToString()); }
The following VFP sample displays the cell from the cursor:
*** ActiveX Control Event *** LPARAMETERS button, shift, x, y local c, hit c = 0 hit = 0 with thisform.ComboBox1 .Items.DefaultItem = .ItemFromPoint( x, y, @c, @hit ) if ( .Items.DefaultItem <> 0 ) if ( bitand( hit, 68 )= 68 ) wait window nowait .Items.CellCaption( 0, c ) + " Index=" + Str( Int((hit - 68)/65536) ) endif endif endwith