ウィンドウを越えてオブジェクトを渡す。


ウィンドウAで作ったオブジェクトobjをウィンドウBに渡す。渡した直後ウィンドウAを閉じるとobjのメソッドは呼び出せない。


なぜか。

ウインドウBで呼び出そうとするobjのメソッドの所有者はウィンドウAであって、メソッド定義もウィンドウAにある。ウィンドウAを閉じた瞬間ウィンドウAにあったメソッド定義もなくなってしまい、結果としてメソッドがみつからない、ということになる。


これは両方のウィンドウに同じスクリプトを書いても同じ。


もしダイアログなどで作ったオブジェクトを親画面に渡したいならオブジェクトの生成を親画面が行うことで回避可能かもしれない。だが親画面の親画面の親画面・・・とかになるとわけわからん。