エントリウィジェットとコンボウィジェット


■ エントリウィジェット

エントリウィジェット Gtk::Entry は、 一行のテキストボックスでテキストの入力と表示をするウィジェットです。 以下は簡単な例で、Name: とラベルのついた入力欄を出して 名前の入力を求め、入力された名前を print するというものです。

プログラム entry.rb:

require 'gtk'

window = Gtk::Window.new(Gtk::WINDOW_TOPLEVEL)

label = Gtk::Label.new('Name:')
entry = Gtk::Entry.new
entry.set_text('John')
box = Gtk::HBox.new(false, 0)
box.pack_start label, true, true, 5
box.pack_start entry, true, true, 5
label.show
entry.show

entry.signal_connect('activate') {|widget|
  print "Your name is #{entry.get_text}\n"
}

window.add(box)
box.show
window.show
Gtk.main

実行結果

プログラムの説明


■ コンボウィジェット

コンボウィジェットは、 エントリにドロップダウン式メニューを合体させたもので、 エントリに入力する内容をメニューから選ぶことができます。

プログラム combo.rb:

require 'gtk'

window = Gtk::Window.new(Gtk::WINDOW_TOPLEVEL)

combo = Gtk::Combo.new
combo.set_popdown_strings(['http://www.netlab.co.jp/ruby/',
			    'http://ruby.freak.ne.jp/'])
combo.entry.set_text ''
window.add(combo)
combo.show
window.show
Gtk.main

実行結果

プログラムの説明

次へ
[TOP] [ML topics] [GTK] [Today's goo analyzer]
Written by akaishi@ruby.freak.ne.jp