From: aito@...5sun.yz.yamagata-u.ac.jp Date: 1997-09-05T10:49:44+09:00 Subject: [ruby-list:4136] Re: How to get value (ruby/tk) In article <199709050129.KAA15174@brembo.netlab.co.jp>, Yukihiro Matsumoto writes: > |tcl/tk の変数は TkVariable で確保することができるのですが, > |tcl/tk の手続きが返す値をその変数に代入するのが難しいのです. > |tk_call を使うと,[ ] がクオートされてしまうので. > > そうかあ,正直いうとruby/tkは処理部分は全部rubyで書くことを > 期待しているので,tclから値をもらうことは全然考えていません > でした.tk.rbに組み込むとしたら,どのような仕様にしたら良い > でしょうね. ruby/tk の中で,tcl/tk から値をもらいたい状況は,ほとんど dialog だけだと思いますので,それを標準で提供すればよろしい のではないでしょうか. ついでですが,emie の中で HiddenTopLevel というクラスを定義 しています.これは,生成された時点では見えないウィンドウで, 設定パネルなどに使用します.tcl/tk 的には,まずウィンドウを 作ってから wm withdraw で見えなくしているのですが,これを ruby だけでやると一瞬ウィンドウが表示されてしまいます.しかたなく, class HiddenToplevel < TkWindow include Wm include TkLowlevel (略) def create_self s = "" s.concat "-screen #@screen " if @screen s.concat "-class #@classname " if @classname tk_call_without_quote 'toplevel', path, s, ';', 'wm', 'withdraw',path end end とやっています.この辺のクラスも,できれば標準ライブラリで提供 してほしいと思いました. --_ ITO Akinori at YAMAGATA UNIVERSITY 伊藤 彰則 山形 大学