PRB: Dragmode=1 Stops Click and Other Mouse Events from Firing
Article ID: 130799
Article Last Modified on 2/11/2000
APPLIES TO
- Microsoft Visual FoxPro 3.0 Standard Edition
This article was previously published under Q130799
SYMPTOMS
If the DRAGMODE property is set to 1, the click event or any of the other
mouse events do not execute for that object.
CAUSE
When the DRAGMODE property is set to 1 for automatic mode, none of the
mouse events fire. The mouse events affected are:
CLICK()
MOUSEMOVE()
MOUSEDOWN()
MOUSEUP()
The DRAGMODE property allows the control to be dragged when the primary
mouse button is pressed and held down, so all other mouse events for this
control are disabled. This is by design.
WORKAROUND
To have more control over dragging, set the DRAGMODE property to zero for
manual mode. Then in the MOUSEDOWN() event, call the CLICK() event and then
call the DRAG() event passing a number one as a parameter to start the
dragging operation.
Step-by-Step Example
- Create a form, and place a check box and a text box on it.
- Add the following code to the MOUSEDOWN() event of the check box:
THIS.CLICK()
THIS.DRAG(1)
- Add the following code to the CLICK() event of the check box:
THIS.PARENT.TEXT1.VALUE="Click"
- Add the following code to the DRAGDROP() event of the text box:
THIS.VALUE=OSOURCE.CAPTION
- Run the form.
Click the check box. In response, the text box should say "Click." Drag the
check box on top of the text box. In response, the text box should say
"Check1."
STATUS
This behavior is by design.
Additional query words: VFoxWin
Keywords: kbcode KB130799