>>I've tried the following code:
>>
>>lnForms = _SCREEN.FormCount
>>FOR lnCnt = lnForms TO 1 STEP -1
>> _screen.Forms(lnCnt).Release
>>ENDFOR
>>
>>It doesn't work.
>>
>>I found that the order of Destroy event executed is: form3, form1, form2.
>>
>>If form3 are called by form2, the above problem will be happened.
>>
>>Why?
>KK, try this minor change:
>lnForms = _SCREEN.FormCount
>FOR lnCnt = lnForms TO 1 STEP -1
> _screen.ActiveForm.Release()
>ENDFOR
>This should release whatever form VFP says is active, rather than forcing the forms to go in a specific
>order
I've tried, but it still doesn't work.
Only Form3 can be released normally.
Form2 and Form1 are not released inside the loop. Form2 is released after the loop and Form1 is not released finally. Why?
I think it is a bug, so I run the the following command if the active form is modal:
_SCREEN.Closable = .F.
KK