08/02/28 16:30:02
>>178
別に問題はない
きちんとRubyとして教えられてさえいれば
CやBASICのようにRubyを教えるというのは最悪な使われ方
流行のスクリプト言語以外に移ったときには確実に戸惑うが、そんなのはどの言語でも同じだしな
>>177
とりあえず、変数の意味を考えれ
正確なRubyとは違うが
$entry = TkEntry.new()
とnewで定義されてる$entryは「特定のTkの部品TkEntry」を指している
だから、$entry.valueというのはこのTkEntry(一行入力欄)のvalue(テキスト的内容の値)を指している
で、Tkのややこしいとこはデータの取得と再指定が同じ書き方だということだ
entry.value = 'ここが入力欄だよ!'
と書けばentryの入力欄に「ここが入力欄だよ!」と表示されるし
input_text = entry.value
と書けば変数input_textに「現在entryに表示されてる文字列」が入る
で、何が言いたいかというと、36行目の「text.value」でエラーが起きてる
text.valueはtextで示されるTk部品の内容を指してるが、textというTk部品はTkButtonだ
とりあえず、ボタンはボタンらしい変数名にしたほうがいいぞ
metasearch_button = TkButton.new(:text=>'メタデータから検索')
とかいう書き方にすれば、変数の名前見ただけでボタンだってわかるし、
ボタンのvalueにsearch(pattern)の結果を渡すというのがそもそも変だってわかるだろ