Ruby GTK2

目次

ScrolledWindow

サンプル

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
必要な場合に表示。