Rubyの魔神 このページをアンテナに追加 RSSフィード

   「Ruby」は宝石の魔神のイメージ(The Jinn of the Ruby)
[DMY] [VB] [VB6] [Python] [C#] [Android] [電子工作] [個人メモ] [仕事メモ] [アイデア] [TstLink] [CE] [LTSA]
[自動化] [Qt] [OCaml] [3Dプリンタ] [TOOLS] [RAA] [Forge]
  [機能別索引] [逆引きRuby] [マニュアル] [るびま] [標準ライブラリ] [るりまサーチ] [Try! Ruby] [PRaggerまとめ] [ピジョン・ブラッド]
   [Rubyコーディング規約] [プログラミングのオキテ] [Rubyist SNS] [TOOLBIS]
   [RubyネットワークProg] [druby] [コードなにがし] [RDocテンプレ] [Ruby/Tkサンプル]
   [WAVE] [Xperia] [github] [twitterなど] [EA] [マクロ]

2006-12-26

MantisのCSV出力のデータを変換

| 19:23 | MantisのCSV出力のデータを変換 - Rubyの魔神 を含むブックマーク はてなブックマーク - MantisのCSV出力のデータを変換 - Rubyの魔神 MantisのCSV出力のデータを変換 - Rubyの魔神 のブックマークコメント

変換内容

文字コード UTF→SJIS

日付 月-日-年 → 年/月/日

Mantis側のPHPをいじれとか言わないように

require "kconv"

class BugList
  Id=0			#Id
  Project=1		#プロジェクト
  Toroku_sya=2		#登録者
  Tanto_sya=3		#担当者
  Yusendo=4		#優先度
  Juyodo=5		#重要度
  Saigensei=6		#再現性
  Version=7		#製品バージョン
  Syusei=8		#修正方法
  Category=9		#カテゴリ
  Toroku=10		#登録日
  Yotei_kosu=11		#予定工数
  OS=12			#OS
  Version2=13		#バージョン
  Plathome=14		#プラットフォーム
  Sansyo=15		#外部からの参照
  Koshin=16		#最終更新日時
  Yoyaku=17		#要約
  Status=18		#ステータス
  Jokyo=19		#解決状況
  Syusei_version=20	#修正済みバージョン

  def convDateFormat(s)
    s[6..7]+"/"+s[0..1]+"/"+s[3..4]
  end

  def initialize(f)
    @filename=f
  end

  def save(outf)
    f1=File.open(@filename)
    f2=File.open(outf,"w")
    while line=f1.gets
      a = Kconv.tosjis(line)
      b = a.split(",")
      if b[0] != "Id" then
        b[Toroku] = convDateFormat(b[Toroku])
        b[Koshin] = convDateFormat(b[Koshin])
      end
      c=b.join(",")
      f2.puts(c)
    end
  end
end

b=BugList.new("project_id_0000000001.csv")
b.save("sproject_id_0000000001.csv")
トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061226

2006-12-22 このエントリーを含むブックマーク このエントリーのブックマークコメント

トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061222

2006-12-15

「RubyでRSS」を使ってみる。(はてブのホットエントリを読んでみます)

| 18:12 | 「RubyでRSS」を使ってみる。(はてブのホットエントリを読んでみます) - Rubyの魔神 を含むブックマーク はてなブックマーク - 「RubyでRSS」を使ってみる。(はてブのホットエントリを読んでみます) - Rubyの魔神 「RubyでRSS」を使ってみる。(はてブのホットエントリを読んでみます) - Rubyの魔神 のブックマークコメント

http://internet.kill.jp/wiki/index.php?%B5%BB%BD%D1%2FRuby%A4%C7RSS

上記のサイトから'get_rss.rb'を持ってきて同じフォルダに保存します。

はてブのホットエントリを読み出してみます。

require 'get_rss.rb'
require 'kconv'

r = RssSite.new("http://b.hatena.ne.jp/hotentry?mode=rss")
#r = RssSite.new("http://ruby.g.hatena.ne.jp/garyo/rss2")

r.get
r.each_item {|item| puts item.link,Kconv.tosjis( item.title),Kconv.tosjis( item.description) }

yield

| 18:14 | yield - Rubyの魔神 を含むブックマーク はてなブックマーク - yield - Rubyの魔神 yield - Rubyの魔神 のブックマークコメント

rubyでは自分でイテレータを定義することもできる.つまり,制限 はあるが自分で制御構造を作ることができるわけだ.イテレータの 定義は普通のメソッドの定義と全く変わらない.

違うのはイテレータの定義の中ではどこかで`yield'の呼び出しが あるということだ.yieldイテレータに渡されたブロックに制御 を移す.例として引数として与えられた数だけ繰り返す`repeat'と いうイテレータを定義してみよう.

Ruby User's Guide - イテレータってなに?

式の中で「yield」はブロックと置き換わるんだね。ひとつえらくなったよ。

グループはてダを読んでみる。

| 18:43 | グループはてダを読んでみる。 - Rubyの魔神 を含むブックマーク はてなブックマーク - グループはてダを読んでみる。 - Rubyの魔神 グループはてダを読んでみる。 - Rubyの魔神 のブックマークコメント

require 'rss/2.0'  が 必要だそうです

require 'rss/2.0' 
require 'get_rss.rb'
require 'kconv'

#r = RssSite.new("http://b.hatena.ne.jp/hotentry?mode=rss")
r = RssSite.new("http://ruby.g.hatena.ne.jp/garyo/rss2")

r.get
r.each_item {|item| puts item.link,Kconv.tosjis( item.title),Kconv.tosjis( item.description) }
トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061215

2006-12-14

DOM Inspector

| 15:16 | DOM Inspector - Rubyの魔神 を含むブックマーク はてなブックマーク - DOM Inspector - Rubyの魔神 DOM Inspector - Rubyの魔神 のブックマークコメント

DOM Inspectorとは、XMLドキュメントおよびHTMLドキュメントを解析するツールです。userContent.cssやuserChrome.cssを弄ったりする場合などに特に有用です。

DOM inspector - Mozilla Firefox まとめサイト

HTMLファイルタグの階層構造が見えて便利

REXML

| 16:18 | REXML - Rubyの魔神 を含むブックマーク はてなブックマーク - REXML - Rubyの魔神 REXML - Rubyの魔神 のブックマークコメント

REXMLとは、100%Rubyで実装されたXMLパーサでXPathサポート しています。

REXMLについて

XMLで始めるRuby入門

REXML

REXMLチュートリアル

REXMLチュートリアル
トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061214

2006-12-12

htree

| 18:08 | htree - Rubyの魔神 を含むブックマーク はてなブックマーク - htree - Rubyの魔神 htree - Rubyの魔神 のブックマークコメント

htree - HTML/XML tree library

htree - HTML/XML tree library

RAAにあるのにgemで落とせないのはなぜ?

誰かGUI版のgem作らないかな。


トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061212

2006-12-07

バッファ

| 11:14 | バッファ - Rubyの魔神 を含むブックマーク はてなブックマーク - バッファ - Rubyの魔神 バッファ - Rubyの魔神 のブックマークコメント

スタック

a=[]
a.push(1)
a.push(2)
p a.pop
p a.pop

キュー

a=[]
a.push(3)
a.push(4)
p a.shift
p a.shift

左から挿入するunshiftもあるみたい

テストケーステンプレ

| 12:09 | テストケーステンプレ - Rubyの魔神 を含むブックマーク はてなブックマーク - テストケーステンプレ - Rubyの魔神 テストケーステンプレ - Rubyの魔神 のブックマークコメント

自動生成できないかな。

require 'test/unit'

class Test_add  < Test::Unit::TestCase
	def setup
	end

	def test_add
	    assert_equal(3,add(1,2))
	    assert_equal("12",add("1","2"))
	end
end


def add(x,y)
	x+y
end

ruby -ropen-uri -e 'eval(open("http://balloon.hobix.com/hpricot").read)'

hpricot, a balloon

WEBrick でプロキシサーバを作る

| 15:31 | WEBrick でプロキシサーバを作る - Rubyの魔神 を含むブックマーク はてなブックマーク - WEBrick でプロキシサーバを作る - Rubyの魔神 WEBrick でプロキシサーバを作る - Rubyの魔神 のブックマークコメント

WEBrickプロキシサーバを作る

Rubyist Magazine - WEBrickでプロキシサーバを作って遊ぶ
 #!/usr/bin/env ruby
 
 require 'webrick'
 require 'webrick/httpproxy'
 
 # プロキシサーバオブジェクトを作る
 s = WEBrick::HTTPProxyServer.new({})
 
 # SIGINT を捕捉する。
 Signal.trap('INT') do
   # 捕捉した場合、シャットダウンする。
   s.shutdown
 end
 
 # サーバを起動する。
 s.start

hpricotを使ってHrefだけ抜き出す

| 16:46 | hpricotを使ってHrefだけ抜き出す - Rubyの魔神 を含むブックマーク はてなブックマーク - hpricotを使ってHrefだけ抜き出す - Rubyの魔神 hpricotを使ってHrefだけ抜き出す - Rubyの魔神 のブックマークコメント

gem install hpricot

をやって「 2. hpricot 0.4 (mswin32)」を選択してhpricotをインストール

require 'rubygems'
require 'hpricot'
require 'kconv'
require 'open-uri'
doc = Hpricot(open("http://hatena.ne.jp/"))

hrefs = (doc/:a).map {|elem| elem[:href]}

hrefs.each do |i|
  puts i
end
トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061207

2006-12-06

バッククォートによるコマンド出力

| 11:13 | バッククォートによるコマンド出力 - Rubyの魔神 を含むブックマーク はてなブックマーク - バッククォートによるコマンド出力 - Rubyの魔神 バッククォートによるコマンド出力 - Rubyの魔神 のブックマークコメント

http://www.ruby-lang.org/ja/man/?cmd=view;name=%A5%EA%A5%C6%A5%E9%A5%EB#a.a5.b7.a5.f3.a5.dc.a5.eb

`date`
%x{ date }

バッククォート(`)で囲まれた文字列は、ダブルクォートで囲まれた文字列と同様にバックスラッシュ記法 の解釈と式展開 が行なわれた後、コマンドとして実行され、その標準出力が文字列として与えられます。コマンドは評価されるたびに実行されます。コマンドの終了ステータスを得るには、$? を参照します

面白い。何か使えそう。

ファイルのロック

| 17:43 | ファイルのロック - Rubyの魔神 を含むブックマーク はてなブックマーク - ファイルのロック - Rubyの魔神 ファイルのロック - Rubyの魔神 のブックマークコメント

f=File.open("c:\\temp\\temp.txt","a")
f.flock(File::LOCK_EX)
f.write("test\n")
f.close

POST メソッドの発行

| 23:12 | POST メソッドの発行 - Rubyの魔神 を含むブックマーク はてなブックマーク - POST メソッドの発行 - Rubyの魔神 POST メソッドの発行 - Rubyの魔神 のブックマークコメント

POST メソッドの発行

Rubyist Magazine - 標準添付ライブラリ紹介 【第 7 回】 net/http

すごい。簡単にPOSTできたよ。HTMLパーサーないかな

require 'net/http'
require 'kconv'

Net::HTTP.version_1_2

Net::HTTP.start('search.hatena.ne.jp', 80) {|http|
  response = http.post('/questsearch',"word=ruby")
  puts Kconv.tosjis( response.body)
}
トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061206

2006-12-05

UMLからRuby

| 13:20 | UMLからRuby - Rubyの魔神 を含むブックマーク はてなブックマーク - UMLからRuby - Rubyの魔神 UMLからRuby - Rubyの魔神 のブックマークコメント

dia2code-ruby

RAA - dia2code-ruby

UMLのダイアログからRubyソースを出力してくれるらしい

WindowsではCygwinが対応してるみたいだけど・・・

単体テストの方法

| 11:58 | 単体テストの方法 - Rubyの魔神 を含むブックマーク はてなブックマーク - 単体テストの方法 - Rubyの魔神 単体テストの方法 - Rubyの魔神 のブックマークコメント

TDDに挑戦しよう

Test::Unit

Test::Unit

使い方

テストするクラス「foo.rb」

class Foo
   def foo
     "foo"
   end
   def bar
     "foo"
   end
end

Unitテスト

test_foo.rb

注意 テストケース用のメソッドは「test_」で始めること

require "test/unit"
require "foo"

class TC_Foo < Test::Unit::TestCase
  def setup
    @obj = Foo.new
  end
  
  def test_foo
    assert_equal("foo",@obj.foo)
  end
  def test_bar
    assert_equal("bar",@obj.bar)
  end
end

結果

Loaded suite C:/ruby/project/Unit/rb10.tmp
Started
F.
Finished in 0.031 seconds.

  1) Failure:
test_bar(TC_Foo) [C:/ruby/project/Unit/rb10.tmp:13]:
<"bar"> expected but was
<"foo">.

2 tests, 2 assertions, 1 failures, 0 errors
Completed(1)

すぐ使いそうなメソッドはこれかな

assert(boolean, message=nil)
    boolean が真なら pass

assert_equal(expected, actual, message=nil)
    expected == actual ならば pass

assert_not_equal(expected, actual, message="")
    expected != actual ならば pass

こうなるとやっぱりUMLツールが欲しくなるな。

どこかにないかな。Rubyクラスを出してくれるツール

トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061205

2006-12-04

はてな連想キーワードAPI

| 08:28 | はてな連想キーワードAPI - Rubyの魔神 を含むブックマーク はてなブックマーク - はてな連想キーワードAPI - Rubyの魔神 はてな連想キーワードAPI - Rubyの魔神 のブックマークコメント

はてなクラス作ると面白い?

#!/usr/bin/env ruby
$KCODE = "u"
require "xmlrpc/client"
require "kconv"

class HatenaGetSimilarWord
  def get(k)
    server = XMLRPC::Client.new("d.hatena.ne.jp", "/xmlrpc")
    result = server.call("hatena.getSimilarWord", {
      "wordlist" => [k]
    })
    Kconv.tosjis(result['wordlist'].map {|v| v['word'] }.join(', '))
  end
end

k=HatenaGetSimilarWord.new
puts k.get("ruby")

オブジェクトの判別

| 11:42 | オブジェクトの判別 - Rubyの魔神 を含むブックマーク はてなブックマーク - オブジェクトの判別 - Rubyの魔神 オブジェクトの判別 - Rubyの魔神 のブックマークコメント

def objType(v)
  return nil unless v
  case v
  when Array then puts "Array"
  when Integer then puts "Integer"
  when Symbol  then puts "Symbol"
  when String  then puts "String"
  else
    puts "else"
  end
end

a=[1,2]
b=1
c="2"
d=nil

objType(a)
objType(b)
objType(c)
objType(d)

はてなお隣質問API

| 12:37 | はてなお隣質問API - Rubyの魔神 を含むブックマーク はてなブックマーク - はてなお隣質問API - Rubyの魔神 はてなお隣質問API - Rubyの魔神 のブックマークコメント

#!/usr/bin/env ruby

require 'uri'
require 'xmlrpc/client'
require 'kconv'

module Hatena
  module Question
    class SimilarSearch
      SERVICE_URI = 'http://q.hatena.ne.jp/xmlrpc'
      def initialize
        uri = URI SERVICE_URI
        @server = XMLRPC::Client.new uri.host, uri.request_uri
      end

      def search(content, options = {})
        options = {
          :content => content,
          :threshold => 2,
          :limit => 5
        }.update options

        @server.call 'question.getSimilarQuestion', options
      end
    end
  end
end

if $0 == __FILE__
  $KCODE = "u"
  require 'pp'
  similar = Hatena::Question::SimilarSearch.new
  similar.search(Kconv.toutf8('代官山付近でおいしいランチを食べられるお店を教えてください。'), :limit => 3 ).each do |result|
#    pp Kconv.tosjis(result)
    puts "#{result["uri"]} #{result["qid"]}  #{Kconv.tosjis(result["content"])}"
  end
end

はてなお隣質問API GUI付 Windows用

| 12:37 | はてなお隣質問API GUI付 Windows用  - Rubyの魔神 を含むブックマーク はてなブックマーク - はてなお隣質問API GUI付 Windows用  - Rubyの魔神 はてなお隣質問API GUI付 Windows用  - Rubyの魔神 のブックマークコメント

SimilarQuestion.rb

#! ruby -Ks
require 'vr/vruby'
require '_frm_SimilarQuestion.rb'

require 'uri'
require 'xmlrpc/client'
require 'kconv'

module Hatena
  module Question
    class SimilarSearch
      SERVICE_URI = 'http://q.hatena.ne.jp/xmlrpc'
      def initialize
        uri = URI SERVICE_URI
        @server = XMLRPC::Client.new uri.host, uri.request_uri
      end

      def search(content, options = {})
        options = {
          :content => content,
          :threshold => 2,
          :limit => 5
        }.update options

        @server.call 'question.getSimilarQuestion', options
      end
    end
  end
end

module Frm_form1
  def self_created
    
  end
  def button1_clicked
    similar = Hatena::Question::SimilarSearch.new
    @text1.text = ""
    similar.search(Kconv.toutf8(@edit1.text), :limit => 3 ).each do |result|
      @text1.text = @text1.text + "#{result["uri"]} #{result["qid"]}  #{Kconv.tosjis(result["content"])}\n"  
    end
    messageBox("終了しました")
  end
end


VRLocalScreen.start Frm_form1

_frm_SimilarQuestion.rb

## CAUTION!! ## This code was automagically ;-) created by FormDesigner.
# NEVER modify manualy -- otherwise, you'll have a terrible experience.

require 'vr/vruby'
require 'vr/vrcontrol'

module Frm_form1

  def _form1_init
    self.caption = 'form1'
    self.move(140,124,672,400)
    addControl(VRButton,'button1',"検索",528,48,88,32,1342177280)
    addControl(VREdit,'edit1',"",80,48,440,32,1342177408)
    addControl(VRText,'text1',"",16,112,616,232,1342177348)
    addControl(VRStatic,'static1',"質問文",16,56,56,24,1342177280)
  end 

  def construct
    _form1_init
  end 

end 

#VRLocalScreen.start Frm_form1

最新ダイアリリスト

| 14:04 | 最新ダイアリリスト - Rubyの魔神 を含むブックマーク はてなブックマーク - 最新ダイアリリスト - Rubyの魔神 最新ダイアリリスト - Rubyの魔神 のブックマークコメント

数万件ヒットするので最初の10件だけ表示

require "open-uri"
require "kconv"

i = 1
open("http://d.hatena.ne.jp/diarylist?mode=lirs").each do |line|
  puts Kconv.tosjis(line)
  i = i + 1
  if i > 10 then
    exit
  end
end
トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061204

2006-12-03

トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061203

2006-12-01

Railsのインストール

| 15:25 | Railsのインストール - Rubyの魔神 を含むブックマーク はてなブックマーク - Railsのインストール - Rubyの魔神 Railsのインストール - Rubyの魔神 のブックマークコメント

3 Railsインストール

3.1 Windows XP

RubyGemsのインストールが終わってしまえば, gemコマンドのみで, Railsと関連するパッケージインターネットから取得して自動的にインストールすることができる.


C:/ruby/rubygems-0.9.0> set http_proxy=http://:<ポート名>

C:/ruby/rubygems-0.9.0> gem install rails --include-dependencies

Ruby on Railsの導入方法

gem install rails --include-dependencies

この一言ですんだけど、後なにやったらいいのか?

Exerb

| 08:44 | Exerb - Rubyの魔神 を含むブックマーク はてなブックマーク - Exerb - Rubyの魔神 Exerb - Rubyの魔神 のブックマークコメント

Exerbは、オブジェクト指向言語Rubyスクリプト/拡張ライブラリを 単一で動作可能なWindows実行形式ファイルに変換するソフトウェアです

Exerb Project

1ステップ生成機能を使えば簡単にEXEファイルができる

$ exerb hello.rb

ActiveScriptRubyには元々入ってて便利

ActiveScriptRuby 1.8.5.3

COM Meets Ruby

複数ファイルがあるときは以下の方法でできる

mkexy hello_call.rb ←これでhello_call.exyが自動生成

exerb hello_call.exy


VisualuRuby計画(仮称)

| 08:43 | VisualuRuby計画(仮称) - Rubyの魔神 を含むブックマーク はてなブックマーク - VisualuRuby計画(仮称) - Rubyの魔神 VisualuRuby計画(仮称) - Rubyの魔神 のブックマークコメント

VisualuRuby計画(仮称)

VisualuRuby計画(仮称)

Form作成ツール

Formdesigner for VisualuRuby

Ruby

VisualuRuby(仮称)使い方

VisualuRuby使い方

試しに作ったサンプル

ボタンを押すとテキストボックスの文字をMessageBoxで表示

本体

form.rb

#! ruby -Ks
require 'vr/vruby'
require '_frm_form.rb'

module Frm_form1
  def self_created
    
  end
  def button1_clicked
    @button1.caption="PUSHED"
    messageBox @edit1.text,"MSGBOX",0
  end
end

VRLocalScreen.start Frm_form1

フォーム

_frm_form.rb

## CAUTION!! ## This code was automagically ;-) created by FormDesigner.
# NEVER modify manualy -- otherwise, you'll have a terrible experience.

require 'vr/vruby'
require 'vr/vrcontrol'

module Frm_form1

  def _form1_init
    self.caption = 'form1'
    self.move(140,124,500,400)
    addControl(VREdit,'edit1',"edit1",128,40,248,32,1342177408)
    addControl(VRStatic,'static1',"static1",16,48,88,32,1342177280)
    addControl(VRButton,'button1',"button1",152,104,192,40,1342177280)
  end 

  def construct
    _form1_init
  end 

end 

#VRLocalScreen.start Frm_form1

ファイルを開く

| 11:12 | ファイルを開く - Rubyの魔神 を含むブックマーク はてなブックマーク - ファイルを開く - Rubyの魔神 ファイルを開く - Rubyの魔神 のブックマークコメント

ボタンを押すと「ファイルを開く」コモンダイアログを開いて選んだファイル名をメッセージボックスで表示

これだけできればツールのGUIとして助かります。

fileopen.rb

#! ruby -Ks
require 'vr/vruby'
require '_frm_fileopen.rb'

module Frm_form1
  def self_created
    
  end
  def button1_clicked
    fn=SWin::CommonDialog::openFilename(self,[ ["all file","*.*"],["text file","*.txt"] ])
    messageBox fn
  end
end

VRLocalScreen.start Frm_form1

_frm_fileopen.rb

## CAUTION!! ## This code was automagically ;-) created by FormDesigner.
# NEVER modify manualy -- otherwise, you'll have a terrible experience.

require 'vr/vruby'
require 'vr/vrcontrol'

module Frm_form1

  def _form1_init
    self.caption = 'form1'
    self.move(140,124,393,182)
    #$_addControl(FDOpenDlg,'openDlg1',"openDlg1",48,88,24,24,1342177280)
    #$_ctn_openDlg1=[48,88,[["all(*.*)", "*.*"]],4096,nil,nil]
    addControl(VRButton,'button1',"Start",136,40,112,32,1342177280)
  end 

  def construct
    _form1_init
  end 

end 

#VRLocalScreen.start Frm_form1

XMLRPCと組み合わせて郵便番号検索

| 12:15 | XMLRPCと組み合わせて郵便番号検索 - Rubyの魔神 を含むブックマーク はてなブックマーク - XMLRPCと組み合わせて郵便番号検索 - Rubyの魔神 XMLRPCと組み合わせて郵便番号検索 - Rubyの魔神 のブックマークコメント

clspostcode.rb XMLRPCを使った郵便番号検索クラス 

#!/usr/local/bin/ruby

require 'xmlrpc/client'
require "kconv"

class PostCode
    def getAddress(postcode)
      postcode.gsub!("-","")
      client = XMLRPC::Client.new2('http://yubin.senmon.net/service/xmlrpc/')
      result = client.call("yubin.fetchAddressByPostcode", postcode)
      Kconv.tosjis(result[0]['pref'])+" "+Kconv.tosjis(result[0]['city'])+" "+Kconv.tosjis(result[0]['town'])
    end
end

postNumber.rb 本体

#! ruby -Ks
require 'vr/vruby'
require '_frm_postNumber.rb'
require 'clspostcode.rb'

module Frm_form1
  def self_created

  end
  def button1_clicked
      pcd = PostCode.new
      @edit2.text=pcd.getAddress(@edit1.text)
  end
end

VRLocalScreen.start Frm_form1

_frm_postNumber.rb フォーム

## CAUTION!! ## This code was automagically ;-) created by FormDesigner.
# NEVER modify manualy -- otherwise, you'll have a terrible experience.

require 'vr/vruby'
require 'vr/vrcontrol'

module Frm_form1

  def _form1_init
    self.caption = 'form1'
    self.move(140,124,500,400)
    addControl(VREdit,'edit1',"",160,48,160,24,1342177408)
    addControl(VRButton,'button1',"開始",336,48,120,24,1342177280)
    addControl(VREdit,'edit2',"",24,104,432,24,1342177408)
    addControl(VRStatic,'static1',"郵便番号検索",16,48,120,32,1342177280)
  end 

  def construct
    _form1_init
  end 

end 

#VRLocalScreen.start Frm_form1

すぐできて便利♪

exerbを使ったらエラーになった。ruby1.8.5だからだろうかorz

ruby1.8.4にしても何かエラーが出て動かないorz

C:\ruby\vruby\postNumber>postNumber.exe
xmlrpc/parser.rb:700:in `require': No such file to load -- rexml/document (LoadE
rror)
        from xmlrpc/parser.rb:700:in `initialize'
        from xmlrpc/utils.rb:48:in `parser'
        from xmlrpc/client.rb:421:in `call2'
        from xmlrpc/client.rb:410:in `call'
        from clspostcode.rb:10:in `getAddress'
        from postNumber.rb:12:in `button1_clicked'
        from vr/vruby.rb:359:in `controlmsg_dispatching'
        from vr/vrcontrol.rb:187:in `self_wmcommand'
        from vr/vrcontrol.rb:184:in `self_wmcommand'
        from vr/vruby.rb:324:in `msghandler'
        from vr/vruby.rb:321:in `msghandler'
        from vr/vruby.rb:989:in `messageloop'
        from vr/vruby.rb:969:in `start'
        from postNumber.rb:16
トラックバック - http://ruby.g.hatena.ne.jp/garyo/20061201