窗体名.控件名_click
就可以了

解决方案 »

  1.   

    先发送一个WM_LBUTTONDOWN消息,再发送一个WM_LBUTTONUP消息
      

  2.   

    to zyl910您好!
    我试了不行,在自已的程序中起作用,但对别的应用程序中的组合框就不行,还有什么办法吗?
      

  3.   

    to zyl910
    能告诉我CB_GETDROPPEDCONTROLRECT用sendmessage发送后,怎么样获得它的返回值吗?我要取返回值中下拉列表框的位置,还想问一下,返回的这个位置是相对于屏幕坐标的吗?
      

  4.   

    dim r as long
    r=sendmessage(...CB_GETDROPPEDCONTROLRECT...)
      

  5.   

    CB_GETDROPPEDCONTROLRECT
    An application sends a CB_GETDROPPEDCONTROLRECT message to retrieve the screen coordinates of the drop-down list box of a combo box. CB_GETDROPPEDCONTROLRECT 
    wParam = 0;                         // not used; must be zero 
    lParam = (LPARAM) (RECT FAR*) lprc; // address of RECT structure 
     
    Parameters
    lprc 
    Value of lParam. Pointer to theRECT structure that is to receive the coordinates. 
    Return Values
    If the message succeeds, the return value is nonzero.If the message fails, the return value is zero.
      

  6.   

    你提问题没题清楚
    我也没仔细看Click事件的一般定义就是鼠标按下并弹起而VB的Combo对Click事件又有了一个新的定义:选择列表项目结束你的意思应该是“选择列表项目结束”由于“鼠标按下并弹起”、“选择列表项目结束”在VB中共用一个Click事件,所以那种方法只对VB编的程序有效对于其他语言编的程序,就不是那一回事,它是通过响应“CBN_SELENDOK”通知消息来确定“选择列表项目结束”
    所以应该发送一个通知消息
    (假设那个Combo的句柄是hWndCbo)
    SendMessage GetParent(hWndCbo), WM_COMMAND, GetDlgCtrlID(hWndCbo) or CBN_SELENDOK*&H10000, ByVal hWndCbo
    '注意这不是一般消息,而是 通知消息