From: Yuji Shigehiro Date: 1997-10-24T19:45:49+09:00 Subject: [ruby-list:5134] Re: ruby & tk(wish) しげひろです. > Date: Fri, 24 Oct 97 08:07:36 +0900 > Subject: [ruby-list:5127] Re: ruby & tk(wish) > Message-Id: <199710232248.HAA06270@sy.is.noda.sut.ac.jp> > 簡単なスクリプトを書きましたが、なんとか戻り値を得る > ことはできないのでしょうか? ruby/tk の tk_call は戻り値を返しているようです. 例えば, こうすれば良いと思います. require "tk" extend Tk # tk_call は private メソッドなのでこうしないと使えない print tk_call("button .a -text test"), "\n" 運良く, 拙作の tcltklib ライブラリが動作するのであれば require "tcltklib" a = TclTkIp.new() print a._eval("button .a -text test"), "\n" となります. ---- wish を子プロセスとして起動した場合, 少なくとも, 以下の 2 種類の情報を ruby インタプリタは wish から取得しなければなりません. 1. tcl/tk コマンドの戻り値 2. ボタンなどが押された, 等というイベント これらを分離して, 1 なら tk_call の戻り値として返したり, 2 ならコール バック関数の呼び出しに変換したりしなければなりません. 面倒そうなので, 私は挫折しました. tkcore.rb は(良く理解していませんが), 良くできていると思います. ---- 重弘裕二 阪大情報処理教育センター (sigehiro@rd.ecip.osaka-u.ac.jp) 阪大工情報システム白川研 (sigehiro@ise.eng.osaka-u.ac.jp)