0
Ruby Tkを使用して、ネストされたループにデバイスの外部ループ(Foo、Bar、Baz)とそれぞれのアクションの内部ループデバイス(開始、停止、一時停止、核)。ネストされたループでRuby Tkラジオボタンを作成するには
現在のコード:
require 'tk'
device_names = %w/Foo Bar Baz/
action_names = %w/Start Pause Stop Nuke/
button_variables = Array.new(device_names.size)
root = TkRoot.new
foo = bar = nil
device_names.each_with_index do |device_name, i|
TkLabel.new(root) do
text device_name
pack {}
end
action_names.each_with_index do |action_name, j|
TkRadiobutton.new(root) do
text action_name
value j
variable button_variables[i]
pack {}
end
end
end
Tk.mainloop
これは12のラジオボタンを生成しますが、私は4つの一時停止ボタンのいずれかをクリックすると、たとえば、すべての4つの一時停止ボタンが設定されています。
コードの他のバリエーションでは、12個のラジオボタンが生成されますが、すべてが1つのセットです。すなわち、12のうちの1つだけが任意の所定の時間に設定される。
これらを4つのラジオボタンの3つのセットにグループ分けするには何が必要ですか?
(このコードは、それがsymanticallyあまり意味がありません理由ですはるかに大きいアプリケーションからダウン切り詰めている。)
(NB:私はTkの*インターフェースを見て行きませんでした。)Iドン'' '' button_variables'''' 'がどこに設定されているのか見ていませんか?それは問題の一部である可能性があります... –
それぞれの 'button_variables [i]'を設定しても振る舞いは変わりません。 –
そして、デレレルに感謝します。 –