WIN32OLE_EVENTメモ
WIN32OLE_EVENTを使ってExcelのイベントにコールバックを登録する例を作ってみた。
require 'win32ole' app = WIN32OLE.new('Excel.Application') app.visible = true wkb = app.workbooks.add i = 100 WIN32OLE_EVENT.new(wkb, 'WorkbookEvents').on_event() do |*e| i = i - 1 p(e.map do |a| WIN32OLE === a ? a.ole_obj_help : a end) end WIN32OLE_EVENT.message_loop while i > 0
疑問:コールバックを削除する方法がわからなかった。