ID: Q120544
The information in this article applies to:
The window name returned by WONTOP() is not the topmost window, or, when the name of the topmost window is specified as a parameter, WONTOP() returns .F. instead of returning .T.
A window was defined with the IN DESKTOP clause. That window is active when the WONTOP() function is called.
Before calling the WONTOP() function, use the DEACTIVATE WINDOW command to deactivate any window that was defined with the IN DESKTOP clause.
Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.
When a window is defined with the IN DESKTOP clause and that window is active, WONTOP() will return the name of that window instead of returning the name of the topmost window. WONTOP() will return the name of the topmost window when no windows that were defined with the IN DESKTOP clause are active.
Run the following code:
DEFINE WINDOW x FROM 10,10 TO 20,20 TITLE 'WINDOW x' IN DESKTOP
DEFINE WINDOW y FROM 10,10 TO 20,20 TITLE 'WINDOW y'
ACTIVATE WINDOW x
ACTIVATE WINDOW y TOP
? WONTOP() && This will return x. It should return y.
= INKEY(0)
RELEASE WINDOW x
RELEASE WINDOW y
Additional reference words: FoxWin buglist2.60 buglist2.60a 2.60a 2.60
KBCategory: kbprg kbbuglist
KBSubcategory: FxprgGeneral
Last Reviewed: August 28, 1995