Module: SleipnirAPI::Dialog
Overview
このモジュールは Sleipnir のダイアログを操作する API を定義しています。
SleipnirAPI::Sleipnir、SleipnirAPI::Tab クラスでこのモジュールの API を利用できます。
pnir.beep
pnir.("処理が終わりました")
tab = pnir.active_tab
r, v = tab.input_box("パスワード", :mask => true)
if r == :ok
puts "パスワード: #{v}"
else
puts "キャンセル"
end
Instance Method Summary collapse
-
#beep ⇒ Object
Beep 音を鳴らします。.
-
#input_box(prompt, opts = nil) ⇒ Object
call-seq: input_box(prompt) input_box(prompt, :default => “default value”) input_box(prompt, mask => true) input_box(prompt, mask => true, :default => “default value”).
-
#message_box(message) ⇒ Object
Sleipnir のメッセージボックスを表示します。.
-
#msgbox(prompt, title, flag) ⇒ Object
WinAPI::MessageBox を呼び出します。.
Instance Method Details
#beep ⇒ Object
Beep 音を鳴らします。
40 41 42 |
# File 'lib/sleipnir_api/dialog.rb', line 40 def beep self.sleipnir.api.Beep end |
#input_box(prompt, opts = nil) ⇒ Object
call-seq:
input_box(prompt)
input_box(prompt, :default => "default value")
input_box(prompt, mask => true)
input_box(prompt, mask => true, :default => "default value")
文字列を入力するダイアログを表示します。
-
:maskキーワード引数に true を指定した場合、入力欄はマスクで保護されます。 -
:defaultキーワード引数で初期値を指定できます。
戻り値は押したボタンと入力欄の値を配列で返します。キャンセルされた場合は、:default で指定した値を返します。
pnir.input_box("名前", :default => "sleipnir")
# firefox を入力し ok を押した場合 => [:ok, "firefox"]
# 〃 cancel を押した場合 => [:cancel, "sleipnir"]
63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/sleipnir_api/dialog.rb', line 63 def input_box(prompt, opts = nil) opts ||= {} if opts[:masked] or opts[:mask] r = self.sleipnir.api.MaskedInputBox(prompt, opts[:default]) else r = self.sleipnir.api.InputBox(prompt, opts[:default]) end if self.sleipnir.api.Result.zero? [:cancel, r] else [:ok, r] end end |
#message_box(message) ⇒ Object
Sleipnir のメッセージボックスを表示します。
22 23 24 |
# File 'lib/sleipnir_api/dialog.rb', line 22 def () self.sleipnir.api.MessageBox() end |
#msgbox(prompt, title, flag) ⇒ Object
WinAPI::MessageBox を呼び出します。
-
prompt: メッセージボックスに表示する文字列を指定します -
title: メッセージボックスのタイトルを指定します -
flag: WinAPI::MessageBox の値と同じ値を指定します
戻り値は WinAPI::MessageBox のと同じ値です。
35 36 37 |
# File 'lib/sleipnir_api/dialog.rb', line 35 def msgbox(prompt, title, flag) self.sleipnir.api.MsgBox(prompt, title, flag) end |