多分、選択されているウィンドウID が変化したため
存在しないObjectID を参照しようとしているのではないでしょうか?
screen 0
input a
input a
input a:id_input3 = stat
screen 1
mes objinfo_hwnd(id_input3)// エラーが起こる
サイズ変更のサブルーチンを以下に置き換えたら動作するはずです。
*inWM_RESIZE
gsel ginfo_intid
size = ginfo_winx, ginfo_winy,0,0
resizeobj 0, size, 1 //リサイズ
return
ちなみに、MoveWindow をそのまま使う方法もあります。
#include "user32.as"
screen , ginfo(20), ginfo(21)
GetWindowLong hwnd, -16
SetWindowLong hwnd, -16, stat | $10000 | $40000
width 300, 300
oncmd gosub *inWM_RESIZE, 0x00005 //リサイズされたら割り込み
txt="":mesbox txt:hwnd_mesbox = objinfo_hwnd(stat)
gosub *inWM_RESIZE
stop
*inWM_RESIZE
MoveWindow hwnd_mesbox,0,0,ginfo_winx,ginfo_winy,1
return