トップ 最新

kumaryu日記

2004-02-15 一週間早いよ

_ ライブ

友人に連絡してみたところ日曜がいいということなので最終日のほうでとる。

先行販売の締め切りぎりぎりなのに最終日が余裕で取れるというのはどうなんだろ。 世の中そんなもんか。

_ Ridge

Ruby用のリソースベースのGUIライブラリ。

昔妄想してただけで終わったんだけど、やっぱ欲しいということで書き始めた。

<gui>
  <window id="TestWindow" width="10.0cm" height="10.0cm" text="Main Window">
    <label text="abc"/>
    <multitext text="abc" 
      anchor="left,top,right,bottom" left="2.5cm" width="5cm" top="2.5cm" height="5cm"/>
    <button text="ok" command="clicked"
      anchor="left,right,bottom" left="2.5cm" width="5cm" top="7.5cm" height="1cm"/>
  </window>
</gui>

こんな感じのリソースをXMLで書いて、

require 'nridge'

rc = Ridge::Resource.open('test_resource.xml')
gui = Ridge::GUI.new()
gui.add_resource(rc)
gui.commands['clicked'] = Proc.new {
  gui.message 'ok'
}
gui.run('TestWindow')

こんなスクリプトを書く。

それだけなら前から妄想してただけで出来てたんだけど、今回はパワーアップ。

動いてるのですよ。okボタンを押すと'ok'とだけ書いたメッセージボックスが出ます。そんだけ。

まだちょっと考えなきゃいけない所があるけど、そこを越えたらあと困るところはほとんどなさそう。 Rubyは楽でいいなぁ。

Windows版の実装にはRubyDotNet2を使用。 RubyのGUIライブラリとしてはこれが一番慣れてるからね。

とりあえずメモのページにRubyDotNet2のメモでも入れておくか。