Create  Edit  Diff  Phillro Industries  Index  Search  Changes  History  Source  RSS  Note  wikifarm  Login

doscmd.so

コンソールを実現します。

1.png
#! ruby -Ks
require "phi"
require "DosCmd"

form = Phi::Form.new :form, "DocCommand"
form.font.name = "MS ゴシック"
memo = Phi::Memo.new form
memo.align = Phi::AL_CLIENT
panel = Phi::Panel.new form
panel.align = Phi::AL_BOTTOM
button1 = Phi::Button.new panel, "start"
edit1 = Phi::Edit.new form
edit1.align = Phi::AL_BOTTOM
edit1.text = 'cmd /c dir /s \\ '

cmd  = Phi::DosCommand.new
cmd.output_lines = memo.lines
cmd.max_time_after_beginning=10

cmd.on_terminate =proc{|*args|
  button1.caption = "start"
}
button1.on_click = proc{
  if cmd.active?
    cmd.stop
    memo.lines.add('=== abort by user ===')
  else
    cmd.command_line = edit1.text
    cmd.execute
    button1.caption = "stop"
  end
}
form.on_close = proc{
  cmd.stop ;
}

form.show
Phi.mainloop
p :ok

methods

require "phi"
require "DosCmd"
require "methods_for_wiki"
puts Phi::DosCommand.methods_for_wiki

_dump => Phi::Component#_dump

active

active?

コマンドを実行中であるかを返す。

command_line

command_line=

実行するコマンド

component_count => Phi::Component#component_count

components => Phi::Component#components

creation_flag

creation_flag=

event_handle

execute

コマンドを実行する。

execute2

exit_code

exit_code=

終了コード

extend => Phi::Persistent#extend

input_to_output

input_to_output=

input_to_output?

line_beginned

line_beginned?

max_time_after_beginning

max_time_after_beginning=

強制終了する時間。実行開始からの秒数で指定する。

max_time_after_last_output

max_time_after_last_output=

強制終了する時間。最後の出力からの秒数で指定する。

name

name=

on_terminate

on_terminate=

コマンド実行の終了時に呼ばれるイベントハンドラ。

output_lines

output_lines=

出力先となる Strings。通常は Memo#lines であろう。

priority

priority=

prompting

prompting?

入力待ちであるかどうかを返す。

prop_info => Phi::Component#prop_info

send_line

コマンドが入力待ちであるような場合に、コマンドに対して文字列を送信する。

show_window

show_window=

since_beginning

実行開始からの秒数。

since_last_output

最後の出力からの秒数。

stop

コマンド実行を強制終了する。

thread_status

thread_status=

write_res_file => Phi::Component#write_res_file

Last modified:2004/12/02 00:28:09
Keyword(s):
References: