るりまサーチ

最速Rubyリファレンスマニュアル検索!
77件ヒット [1-77件を表示] (0.167秒)
トップページ > クエリ:i[x] > クエリ:l[x] > クエリ:on_event[x]

別のキーワード

  1. kernel $-l
  2. matrix l
  3. _builtin $-l
  4. lupdecomposition l
  5. $-l kernel

ライブラリ

クラス

キーワード

検索結果

WIN32OLE_EVENT#on_event(event = nil) {|*args| ... } -> () (24325.0)

イベント通知を受けるブロックを登録します。

...WIN32OLE_EVENT#on_event_with_outargsを利用してください。

@raise WIN32OLERuntimeError WIN32OLE_EVENT#unadviseによってイベン
トソースと切断済みです。

i
e = WIN32OLE.new('InternetExplorer.Application')
ev = WIN32OLE_EVENT.new(ie, 'DWe...
...bBrowserEvents2')
ev.on_event("NavigateComplete2") do |browser, url|
puts url
end

同じオブジェクトに対してeventパラメータを指定したブロックと指定しないブ
ロックが混在している場合、通知されたイベントに対応するブロックがあれ...
...らだけが呼び出されます。

i
e = WIN32OLE.new('InternetExplorer.Application')
ev = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents2')
ev.on_event("NavigateComplete2") do |browser, url|
puts url
end
ev.on_event do |*args| # <- NavigateComplete2イベント時は実行されない...

WIN32OLE_EVENT#on_event_with_outargs(event = nil) {|*args| ... } -> () (15313.0)

イベント通知を受けて結果を呼び出し元へ返すブロックを登録します。

...を指定します。引数を省略した場合は、すべて
のイベントを対象とするブロックの登録となります。

WIN32OLE_EVENT#on_eventと異なり、イベントのブロック変数に戻り値を
設定できます。

@param event イベント名を文字列かシンボ...
...ださい。

@raise WIN32OLERuntimeError WIN32OLE_EVENT#unadviseによってイベン
トソースと切断済みです。

i
e = WIN32OLE.new('InternetExplorer.Application')
ev = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents2')
ev.on_event('BeforeNavigate2') do |*args|...
...args[6] = true unless args[4] # Cancel = true unless PostData
end

当メソッドはイベント名の大文字小文字を区別するほか、イベント名の存在確
認を行いません。このため、誤ったイベント名を記述してもエラーとはならず、
単にイ...

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

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

...d_missingが呼ばれます。イベン
ト名は大文字小文字を区別するため、正確な記述が必要です。

@param obj イベントに対応するメソッドを持つオブジェクト。イベント受信を
解除するにはnilを指定します。

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(id, *args)
pu...
...WIN32OLE.new('InternetExplorer.Application.1')
event = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents2')
event.handler = IeHandler.new
i
e.Navigate2 'http://www.ruby-lang.org/ja/'
l
oop do
break if event.handler.completed
WIN32OLE_EVENT.message_loop
end
i
e.Quit

WIN32OLE_EVENT#on_event...

WIN32OLE_EVENT (12006.0)

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

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

OLEオートメーションサーバによっては、サーバの処理の過程でクライアントが
あらかじめ登録したメソッドを呼び出すものがあります。このサーバが...
...す。WIN32OLE_EVENTを利用
すると、ブロックの形式でイベントを受け取るメソッドをサーバへ登録できま
す。

=== サンプルコード

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

WIN32OLE_EVENT#unadvise -> () (9106.0)

イベント通知元をオブジェクトから切断します。

...知を受けられなくなります。また、このオブ
ジェクトを利用したWIN32OLE_EVENT#on_eventなどの呼び出しはエラー
(WIN32OLERuntimeErrorの通知)となります。

WIN32OLE_EVENTオブジェクトは一度生成すると、イベントハンドラが登録され...
...トの通知元のオ
ブジェクトと相互参照されるため、自動的に解放することができないからです。
結果として、OLEオートメーションサーバの解放もスクリプトが終了するまで行
われません。

この状態が望ましくないアプリ...

絞り込み条件を変える

WIN32OLE_EVENT.message_loop -> () (9106.0)

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

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

message_loopメソッドは、Windowsメッセージがキューイングされている限りメッ
セージの読み出しとディスパッチを実行します。

COMのスレッド間/プロセス間通信はスレッド内で呼び出...
...ためにWindowsメッセージを利用します。このため、ほとんどのイベント処理は
Windowsメッセージを読み取ってディスパッチすることで通知されます。

i
e = WIN32OLE.new('InternetExplorer.Application.1')
event = WIN32OLE_EVENT.new(ie, 'DWebBrowser...
...false
event.on_event('DocumentComplete') do |disp, uri|
disp.document.getElementsByTagName('a').each do |e|
puts "#{e.innerHTML}=#{e.href}" #=> ダウンロード=http://www.ruby-lang.org/ja/downloads/ など
end
disp.quit
b = true
end
i
e.Navigate2 'http://www.ruby-lan...

WIN32OLE_EVENT#off_event(event = nil) -> () (6228.0)

WIN32OLE_EVENT#on_eventで登録したブロックを解除します。

...WIN32OLE_EVENT#on_eventで登録したブロックを解除します。

@param event 文字列またはシンボルで登録時に指定したイベント名を指定しま
す。nilの場合、WIN32OLE_EVENT#on_eventに対してnilを指定したブロッ
クを解除します。

ev = WIN32OLE_...
...EVENT.new(ie, 'DWebBrowserEvents')
ev.on_event(:NavigateComplete) {|url| puts url }
...
ev.off_event(:NavigateComplete)...