目次へ | 前の項目へ | 次の項目へ |
この節のタイトルにあるGTKというのは今まで何度か出てきましたが、GNOMEデスク トップ環境を構築するためのツールキットです。ツールキットとは、ボタンやウィ ンドウ、ファイルメニューのデザインなどを一から作り始めなくても、それを使え ば呼び出すだけで使えるキットのことです。RubyからのこのGTKを利用できますの で、ほんの一部ですが、ボタンを作って動作させてみましょう。
今回のスクリプト1)は次のようになります。
require 'gtk' window = Gtk::Window.new window.signal_connect("delete_event") do Gtk.main_quit end button = Gtk::Button.new("Click here!") button.signal_connect("clicked") do puts("Hello, world!") end window.add(button) window.show_all Gtk.main |
今度のは少し長いスクリプトです。これを button.rb として保存し、ター ミナルで実行してみましょう。
$ ruby button.rb
小さなウィンドウを立ち上げるプログラムなので、気をつけないとどこにボタンが 表示されたかわからないかもしれませんが、画面のどこかに図25-1のようなボタン ウィンドウが表示されたはずです。
ボタンをクリックするとどのようなことが起こるのか確かめてみましょう。クリッ クするたびに、ターミナルに Hello, world! と表示されます。ウィンド ウ枠のクローズボタン (×印) をクリックすると終了します。
スクリプトの詳しい動作は省略しますが、全体の流れは、以下のようになっていま す。
require 'gtk' window = Gtk::Window.new window.set_title("Digital clock") window.show label = Gtk::Label.new("") window.add(label) label.show def window.delete_event(e) Gtk.main_quit end Thread.start do loop do time = Time.now str = time.strftime("%m/%d (%a)\n%H:%M:%S") label.set_text("#{str}") sleep(1) end end Gtk.main |
参考文献
1)五十嵐宏、「Software Design」2001.3 pp.135, 技術評論社
2)五十嵐宏、「Linux Japan」2001.7 pp.27、五橋研究所
ページの先頭へ | 目次へ | 前の項目へ | 次の項目へ |