|
From: Masao M. <mu...@hi...> - 2002-07-23 05:07:59
|
むとうです。
つづき。
On Tue, 23 Jul 2002 13:48:09 +0900
Masao Mutoh <mu...@hi...> wrote:
> -----
> Gnome.initはRuby/GNOMEライブラリの初期化を行うと同時に引数の解析も行います。
> Ruby/GNOMEライブラリの初期化を行うために、Ruby/GNOMEアプリケーションでは
> 一番最初に必ず呼び出す必要があります。
> #sample/gnome-init-popt.rbにサンプルを追加しておきましたので
> #そちらもご参照ください。
>
> サンプルコード:
> ----
> options = [
> ["label", 'l', Gnome::POPT_ARG_STRING, "Hello World", "Set button label", "label"],
> ["width", 'w', Gnome::POPT_ARG_INT, 300, "Set window width", "width"],
> ["height", 'h', Gnome::POPT_ARG_INT, 200, "Set window height", "height"],
> ["border", 'b', Gnome::POPT_ARG_NONE, nil, "Remove window border"]
> ]
>
> args = Gnome.init("gnome-init-popt", "1.0", options)
戻り値のことを書くのを忘れてました(^^;)。
戻り値には2種類あります。1つはオプション名付き(上記で指定した)もので--label=argという
形で呼び出すもの、もう1つはオプション指定無しで呼び出すものです。
例えば、上の例ですと、
ruby test.rb --label="Hello World" hoge fuga
のような感じで --label="Hello World"が前者、hoge, fugaが後者になります。
で、optionsで指定したものに関しては、argsをHashとしてそのまま使うことができます。
label = args["label"]
この場合、長い名称がキーとして使われます。
次に、hogeのようなオプション指定無しのものはargsというキーに配列としてまとめられます。
others = args["args"] #=> ["hoge", "fuga"]
したがって、各アプリケーションは"args"という引数を使うことはできませんので注意して
ください。
なお、argsはGnome::POPT_ARGSという定数値になっていますので上記は、
others = args[Gnome::POPT_ARGS]
と書くことができます。なるべくこちらの形を使うようにしてください。
--
.:% Masao Mutoh<mu...@hi...>
|