Occurs when the user releases a mouse button.
Type | Description | |||
Button as Integer | An integer that identifies the button that was pressed to cause the event. | |||
Shift as Integer | An integer that corresponds to the state of the SHIFT, CTRL, and ALT keys when the button specified in the button argument is pressed or released. | |||
X as OLE_XPOS_PIXELS | A single that specifies the current X location of the mouse pointer. The x values is always expressed in container coordinates. | |||
Y as OLE_YPOS_PIXELS | A single that specifies the current Y location of the mouse pointer. The y values is always expressed in container coordinates. |
Use a MouseDown or MouseUp event procedure to specify actions that will occur when a mouse button is pressed or released. Unlike the Click and DblClick events, MouseDown and MouseUp events lets you distinguish between the left, right, and middle mouse buttons. You can also write code for mouse-keyboard combinations that use the SHIFT, CTRL, and ALT keyboard modifiers. Use the ItemFromPoint property to determine the cell or the item over the cursor. Use the Change event to notify your application that user clicks an item or presses the ENTER key. Use the SelectionChange event to notify your application that a new item is selected. Use the CellImages property to assign multiple icons to a cell.
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 endwithSyntax for MouseUp event, /NET version, on:
private void MouseUpEvent(object sender,short Button,short Shift,int X,int Y) { } Private Sub MouseUpEvent(ByVal sender As System.Object,ByVal Button As Short,ByVal Shift As Short,ByVal X As Integer,ByVal Y As Integer) Handles MouseUpEvent End Sub |
private void MouseUpEvent(object sender, AxEXCOMBOBOXLib._IComboBoxEvents_MouseUpEvent e) { } void OnMouseUp(short Button,short Shift,long X,long Y) { } void __fastcall MouseUp(TObject *Sender,short Button,short Shift,int X,int Y) { } procedure MouseUp(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin end; procedure MouseUpEvent(sender: System.Object; e: AxEXCOMBOBOXLib._IComboBoxEvents_MouseUpEvent); begin end; begin event MouseUp(integer Button,integer Shift,long X,long Y) end event MouseUp Private Sub MouseUpEvent(ByVal sender As System.Object, ByVal e As AxEXCOMBOBOXLib._IComboBoxEvents_MouseUpEvent) Handles MouseUpEvent End Sub Private Sub MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single) End Sub Private Sub MouseUp(ByVal Button As Integer,ByVal Shift As Integer,ByVal X As Long,ByVal Y As Long) End Sub LPARAMETERS Button,Shift,X,Y PROCEDURE OnMouseUp(oComboBox,Button,Shift,X,Y) RETURN |
<SCRIPT EVENT="MouseUp(Button,Shift,X,Y)" LANGUAGE="JScript"> </SCRIPT> <SCRIPT LANGUAGE="VBScript"> Function MouseUp(Button,Shift,X,Y) End Function </SCRIPT> Procedure OnComMouseUp Short llButton Short llShift OLE_XPOS_PIXELS llX OLE_YPOS_PIXELS llY Forward Send OnComMouseUp llButton llShift llX llY End_Procedure METHOD OCX_MouseUp(Button,Shift,X,Y) CLASS MainDialog RETURN NIL void onEvent_MouseUp(int _Button,int _Shift,int _X,int _Y) { } function MouseUp as v (Button as N,Shift as N,X as OLE::Exontrol.ComboBox.1::OLE_XPOS_PIXELS,Y as OLE::Exontrol.ComboBox.1::OLE_YPOS_PIXELS) end function function nativeObject_MouseUp(Button,Shift,X,Y) return |