意外と知られていないかもしれない、rubyからわずか3行でダイアログボックスを表示する方法。ただしWindows限定。
Win32OLEという標準添付のライブラリを使ってWindowsのシェル(WSHShellオブジェクト)を操作します。
rubyから3行でダイアログ
最低限必要なのはこれだけ。
require 'win32ole'
wsh = WIN32OLE.new('WScript.Shell')
wsh.Popup("3行でダイアログ")
実行するとこうなる。
オプションとしてダイアログのタイトルや、ボタンとアイコンの種類も設定できます。詳しくはMSのWSH解説ページをご覧あれ。
RubyでGUIというとRuby/Tkなどが有名ですが、別途Tcl/Tkのインストールが必要であったりして若干不便。
単純にダイアログを表示する程度であればWSHも活用できるのではないかと思います。
Win32OLEは他にもウィンドウ操作を自動化できたりして楽しそうです。
参考ページ
RubyからWSHShellオブジェクトを使う
ここのサンプルスクリプトでメモ帳が勝手に動くのを見てちょっと感動。
Ruby での Excel 操作 - miau’s blog?
Excelも操作できるらしい。参考URL先にWin32OLEの情報あり。
ruby 覚え書き ダイアログボックス関連
サンプルスクリプトいろいろ発見。
Comments»
ruby でコモンダイアログを使えうためのコードを、WinDialog というライブラリにまとめました: