Neat-o. For positioning under a button, I use this function.
!------------------------------------------------------------------
PositionPopup PROCEDURE(SHORT pFEQ,PopupClass pPopup)!,STRING,PROC
!------------------------------------------------------------------
RECT GROUP
left SIGNED
top SIGNED
right SIGNED
bottom SIGNED
END
hwnd LONG
CODE
hwnd = pFEQ{PROP:Handle}
JSGetWindowRect(hwnd,ADDRESS(Rect))
RETURN(pPopup.Ask(Rect.Left,Rect.Bottom))