screenで作った親ウィンドウ内の子ウィンドウというのが
何を指しているのかよく分かりませんが(MDIの事?)
Win32API関数のGetFocus関数でフォーカスのあるウィンドウのハンドルは取得できます。
あと特定座標下のウィンドウハンドルを取得するWindowFromPoint関数で
選択(クリック等)した座標にあるウィンドウハンドルが取得できるので
それを保存しておけば選択されたウィンドウが変更されているのかどうかを
判断する事も可能だと思います。
#include "user32.as"
bhwnd = hwnd ;親ウィンドウのハンドル
mes "親ウィンドウのハンドル(hwnd) = " + bhwnd
sdim buf
mesbox buf,300,200 : id1 = objinfo(stat, 2)
objprm 0, "mesbox1のハンドル = " + id1
mesbox buf,300,200 : id2 = objinfo(stat, 2)
objprm 1, "mesbox2のハンドル = " + id2
screen 1, 320, 240 : cls 1
mes "子ウィンドウのハンドル = " + hwnd
SetParent hwnd, bhwnd : width 300, 100, 300, 20
gsel 0
*main
x = ginfo_mx
y = ginfo_my
WindowFromPoint x, y : pwin = stat
GetFocus : fwin = stat
title "座標下にあるウィンドウハンドル= " + pwin + " (" + x + "," + y +") フォーカスのあるウィンドウ= " + fwin
wait 10
goto *main
具体的に何がしたいのかがよく分からないので
それが分かればもっと良い方法があるかもしれません。