ruby-****@lists*****
ruby-****@lists*****
2003年 5月 5日 (月) 20:09:52 JST
------------------------- REMOTE_ADDR = 61.26.70.211 REMOTE_HOST = ------------------------- = Getting Started まず最初にする事は、もちろん、Ruby-GNOME2のソースをダウンロードしてインストールする事だ。 Ruby-GNOME2の最新版はいつでも ((<ここ|URL:http://sourceforge.net/project/showfiles.php?group_id=53614>)) から入手できる. Ruby-GNOME2に関する情報は ((<Ruby-GNOME2 Project Website|URL:http://ruby-gnome2.sourceforge.jp/>)) ( ((<日本語版|URL:http://ruby-gnome2.sourceforge.jp/ja/hiki.cgi>)) ) や ((<Ruby-GNOME2 Document Site|URL:http://ruby-gnome2.sourceforge.net/>)) で参照できる. Ruby/GTK2の紹介は、まず出来るだけ簡単なプログラムから始めよう。 このプログラムは200x200ピクセルのウィンドウを作成するが、shellからkillする以外にプログラムを止める方法はないというものだ。 ((*ここにスクリーンショット*)) require 'gtk2' Gtk.init window = Gtk::Window.new(Gtk::Window::TOPLEVEL) window.show Gtk.main このプログラムをbase.rbという名前で保存しよう. コマンドラインから ruby base.rb とすることで実行することができる. それでは,上のプログラムをもう少し詳しく見ていこう. require 'gtk2' Ruby/GTK2を使う全てのスクリプトでは、gtk2をrequireする. これによりRuby/GTK2の変数、関数などを利用できるようになる. 次の行 Gtk.init では、全てのRuby/GTK2アプリケーションに必要なメソッドGtk.initを呼び出している。 このメソッドはデフォルトビジュアルやカラーマップなどのセットアップやGDKの初期化を行う. またこのメソッドはライブラリの初期化とデフォルトシグナルハンドラのセットアップを行いう. ((-GTKアプリケーション標準のコマンドラインオプションの記述はどうする?-)) 次の 2 行のコードはウィンドウを作成し、表示する。 window = Gtk::Window.new(Gtk::Window::TOPLEVEL) window.show Gtk::Window.newの引数にGtk::Window::TOPLEVELを指定すると、このウィンドウはウィンドウマネージャによるデコレーションと配置の指示を受けるようなる。 ユーザがウィンドウを操作できるように、子ウィジェットの無いウィンドウはデフォルトサイズが0x0ではなく200x200のサイズで作成される。 Gtk::Window#showメソッド で、このウィジェットの設定が終り、表示可能であることをGTKに知らせている。 最後の行でGTKのメイン処理ループに入る。 Gtk.main Gtk.mainも,全てのRuby/GTK2アプリケーションで呼出す必要のあるメソッドである. 処理がここに到達すると、GTKはXイベント(ボタンやキーの押下など)や、タイムアウト、ファイルI/Oからの通知を待ってスリープする。 しかし、このシンプルな例ではイベントを無視している。 ------------------------- = Getting Started まず最初にする事は、もちろん、Ruby-GNOME2のソースをダウンロードしてインストールする事だ。 Ruby-GNOME2の最新版はいつでも ((<ここ|URL:http://sourceforge.net/project/showfiles.php?group_id=53614>)) から入手できる. Ruby-GNOME2に関する情報は ((<Ruby-GNOME2 Project Website|URL:http://ruby-gnome2.sourceforge.jp/>)) ( ((<日本語版|URL:http://ruby-gnome2.sourceforge.jp/ja/hiki.cgi>)) ) や ((<Ruby-GNOME2 Document Site|URL:http://ruby-gnome2.sourceforge.net/>)) で参照できる. Ruby/GTK2の紹介は、まず出来るだけ簡単なプログラムから始めよう。 このプログラムは200x200ピクセルのウィンドウを作成するが、shellからkillする以外にプログラムを止める方法はないというものだ。 {{image_left("simple.png")}}{{br}} require 'gtk2' Gtk.init window = Gtk::Window.new(Gtk::Window::TOPLEVEL) window.show Gtk.main このプログラムをbase.rbという名前で保存しよう. コマンドラインから ruby base.rb とすることで実行することができる. それでは,上のプログラムをもう少し詳しく見ていこう. require 'gtk2' Ruby/GTK2を使う全てのスクリプトでは、gtk2をrequireする. これによりRuby/GTK2の変数、関数などを利用できるようになる. 次の行 Gtk.init では、全てのRuby/GTK2アプリケーションに必要なメソッドGtk.initを呼び出している。 このメソッドはデフォルトビジュアルやカラーマップなどのセットアップやGDKの初期化を行う. またこのメソッドはライブラリの初期化とデフォルトシグナルハンドラのセットアップを行いう. ((-GTKアプリケーション標準のコマンドラインオプションの記述はどうする?-)) 次の 2 行のコードはウィンドウを作成し、表示する。 window = Gtk::Window.new(Gtk::Window::TOPLEVEL) window.show Gtk::Window.newの引数にGtk::Window::TOPLEVELを指定すると、このウィンドウはウィンドウマネージャによるデコレーションと配置の指示を受けるようなる。 ユーザがウィンドウを操作できるように、子ウィジェットの無いウィンドウはデフォルトサイズが0x0ではなく200x200のサイズで作成される。 Gtk::Window#showメソッド で、このウィジェットの設定が終り、表示可能であることをGTKに知らせている。 最後の行でGTKのメイン処理ループに入る。 Gtk.main Gtk.mainも,全てのRuby/GTK2アプリケーションで呼出す必要のあるメソッドである. 処理がここに到達すると、GTKはXイベント(ボタンやキーの押下など)や、タイムアウト、ファイルI/Oからの通知を待ってスリープする。 しかし、このシンプルな例ではイベントを無視している。