るりまサーチ

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

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

ライブラリ

クラス

キーワード

検索結果

WIN32OLE_EVENT.message_loop -> () (44018.0)

Windowsのメッセージポンプを実行します。

...ージを読み取ってディスパッチすることで通知されます。

ie = WIN32OLE.new('InternetExplorer.Application.1')
event = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents2')
b = false
event.on_event('DocumentComplete') do |disp, uri|
disp.document.getElementsByTagName('a').eac...
...g/ja/downloads/ など
end
disp.quit
b = true
end
ie.Navigate2 'http://www.ruby-lang.org/ja/'
loop do
break if b
WIN32OLE_EVENT.message_loop

end

なお、メソッド名はloopですが、呼び出し時および既にキューイングされたメッ
セージの処理...

WIN32OLE_EVENT (38024.0)

OLEオートメーションサーバからのイベント通知を制御するクラスです。

...ント」と呼びます。WIN32OLE_EVENTを利用
すると、ブロックの形式でイベントを受け取るメソッドをサーバへ登録できま
す。

=== サンプルコード

ie = WIN32OLE.new('InternetExplorer.Application.1')
event = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents2')...
...nt.getElementsByTagName('a').each do |e|
puts "#{e.innerHTML}=#{e.href}" #=> ダウンロード=http://www.ruby-lang.org/ja/downloads/ など
end
disp.quit
b = true
end
ie.Navigate2 'http://www.ruby-lang.org/ja/'
loop do
break if b
WIN32OLE_EVENT.message_loop

end...

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

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

...xplorer.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.Quit

WIN32OLE_EVENT
#on_eventなどの呼び出しで...

WIN32OLE_TYPE#default_event_sources -> [WIN32OLE_TYPE] (60.0)

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

...= WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
tobj.default_event_sources.map {|intf| intf.name} #=> ["DocEvents"]

WIN32OLE_EVENT
.newでインターフェイス名を指定しない場合は、ここで
返されたインターフェイスが選択されます。

次の...
...呼び出し(=イベント通知)をトレースして調べるプ
ログラムです。イベントを受け付けるために、
WIN32OLE_EVENT.message_loop
の呼び出しが必要な点に注意してください。
ここでは最終イベントのStatusTextChangeイベントのメッセー...
...w}: #{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

このプログラムを実行するとWindows7...