a browse window is not a windows window object and it have not a windows handle (hWND).
there was old vfp concepts as wandle...and so.
Maybe its was invented before windows (to confirm).
if you add the clause name, it becomes a windows window object as a child form (not inherit for all PEM !).
then only in this case it have a normal windows handle and then can be manipulated with APIs as:
FindWindow (search a window by its caption (warning:localized))
GetWindowText(retrieve the window caption)
GetWindowRect (retrieve the coordinates of the points: left,top,right, bottom)
if you add clause name ,you can manipulate the vfp window as form:
CLOSE DATABASES
sele contact from home(1)+"samples\data\customer" into cursor ycurs
BROWSE FIELDS contact title 'MyBrowse' FONT 'System', 15 STYLE 'B' name yb nowait
with yb as form
.left=650
.top=140
.width=400
.height= 500
.SetAll("DynamicBackColor","IIF(MOD(RECNO( ), 2)=0, RGB(255,255,255) , RGB(210,255,166))", "Column")
.Refresh
Locate
inke(1)
for i=1 to 10
.left=.left-20
.top=.top-5
inke(0.2)
endfor
endwith
instead you can use the clause
[in window thisform]
and then work with the form (can access to all its PEM particulary the position(left,top,width,height...]