サンプル
ScrolledWindowは次のように使用する。
require 'gtk2'
win = Gtk::Window.new()
scrolled = Gtk::ScrolledWindow.new()
scrolled.set_policy(Gtk::POLICY_ALWAYS, Gtk::POLICY_NEVER)
text = Gtk::TextView.new()
win.add(scrolled)
scrolled.add(text)
win.show_all()
Gtk.main()
スクロールに対応していない子ウィジェットを追加する場合はadd_with_viewportを使用する。
require 'gtk2'
win = Gtk::Window.new()
scrolled = Gtk::ScrolledWindow.new()
scrolled.set_policy(Gtk::POLICY_ALWAYS, Gtk::POLICY_NEVER)
hbox = Gtk::HBox.new()
win.add(scrolled)
scrolled.add_with_viewport(hbox)
5.times do
hbox.add(Gtk::Button.new("button"))
end
win.show_all()
Gtk.main()
GtkPolicyType
set_policyの2つの引数は、GtkPolicyType型である。GtkPlicyTypeには次のような値がある。
- Gtk::POLICY_ALWAYS
- 常に表示。
- Gtk::POLICY_NEVER
- 常に非表示。
- Gtk::POLICY_AUTOMATIC
- 必要な場合に表示。