るりまサーチ

最速Rubyリファレンスマニュアル検索!
24件ヒット [1-24件を表示] (0.035秒)

別のキーワード

  1. _builtin end
  2. ripper end_seen?
  3. _builtin exclude_end?
  4. _builtin end_with?
  5. document implicit_end=

ライブラリ

クラス

検索結果

WIN32OLE_EVENT#handler=(obj) -> () (18155.0)

イベント処理を実行するオブジェクトを登録します。

...class IeHandler
def initialize
@completed = false
end

attr_reader :completed
def onDocumentComplete(disp, uri)
disp.document.getElementsByTagName('a').each do |e|
puts "#{e.innerHTML}=#{e.href}"
end

@completed = true
end

def method_missing(i...
...spect}"
end

end


ie = WIN32OLE.new('InternetExplorer.Application.1')
event = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents2')
event.handler = IeHandler.new
ie.Navigate2 'http://www.ruby-lang.org/ja/'
loop do
break if event.handler.completed
WIN32OLE_EVENT.message_loop
end

ie....

WIN32OLE_TYPE#default_event_sources -> [WIN32OLE_TYPE] (91.0)

型が持つソースインターフェイスを取得します。

...WebEvent
def initialize
@completed = false
end

attr_reader :completed
end

source.ole_methods.each do |m|
WebEvent.module_eval do
define_method("on#{m.name}") do |*arg|
if arg[0] == "ページが表示されました"
@completed = true
end

puts "#...
...{Time.now}: #{m.name} was called"
p arg
end

end

end

evt = WIN32OLE_EVENT.new(ctl)
evt.handler = WebEvent.new
ctl.navigate2 'http://www.ruby-lang.org/'
loop do
break if evt.handler.completed
WIN32OLE_EVENT.message_loop
end

ctl.Quit

このプログラムを実行するとW...
...e was called
["{265b75c1-4158-11d0-90f6-00c04fd497ea}"]
2010-10-06 22:33:54 +0900: BeforeNavigate2 was called
[#<WIN32OLE:0x9d08f0>, "http://www.ruby-lang.org/", 0, "", nil, "", false]
2010-10-06 22:33:54 +0900: DownloadBegin was called
[]
2010-10-06 22:33:54 +0900: PropertyChange was called...