閉じようとしたウィンドウを非表示にして、
全て閉じられたら終了します。
A=0 /*閉じられたウィンドウをカウント*/
screen 0 :title ""+ginfo(2)
screen 1 :title ""+ginfo(2)
screen 2 :title ""+ginfo(2)
screen 3 :title ""+ginfo(2)
onexit gosub *Exit /*いずれかのウィンドウを閉じようとしたら*Exitに飛ぶ*/
stop
*Exit
if ginfo(2)=0 { /*閉じられたウィンドウのIDが0だったとき*/
gsel ginfo(2),-1 :A=A+1 /*ウィンドウIDの0を非表示にしてAに1をカウント*/
if A=4 :end /*Aが4(全てのウィンドウが閉じられたときは終了*/
return
}
if ginfo(2)=1 { /*閉じられたウィンドウのIDが1だったとき*/
gsel ginfo(2),-1 :A=A+1 /*ウィンドウIDの1を非表示にしてAに1をカウント*/
if A=4 :end /*Aが4(全てのウィンドウが閉じられたときは終了*/
return
}
if ginfo(2)=2 { /*閉じられたウィンドウのIDが2だったとき*/
gsel ginfo(2),-1 :A=A+1 /*ウィンドウIDの2を非表示にしてAに1をカウント*/
if A=4 :end /*Aが4(全てのウィンドウが閉じられたときは終了*/
return
}
if ginfo(2)=3 { /*閉じられたウィンドウのIDが3だったとき*/
gsel ginfo(2),-1 :A=A+1 /*ウィンドウIDの3非表示にしてAに1をカウント*/
if A=4 :end /*Aが4(全てのウィンドウが閉じられたときは終了*/
return
}
全て非表示のままでいいのなら
/*ウィンドウを残したままにするのはあまり良くないけど...*/
screen 0 :screen 1 :screen 2 :screen 3
onexit gosub *Exit
stop
*Exit
if ginfo(2)=0 :gsel ginfo(2),-1 :return
if ginfo(2)=1 :gsel ginfo(2),-1 :return
if ginfo(2)=2 :gsel ginfo(2),-1 :return
if ginfo(2)=3 :gsel ginfo(2),-1 :return
でいいと思います。