title: Phi::Button
author: YOSHIDA Kazuhiro
mailto: moriq@moriq.com

1. Phi::Button

  押しボタンコントロール

  Phi::Button は Windows 標準のボタンである。

  Phi::Button は，ボタンの動作や状態を制御するプロパティを数多く備えている。

  ビットマップを配置できる押しボタンコントロールを使用するには， Phi::BitBtn# を使用すること。複数のボタンをひとつのグループとして機能させるには， Phi::SpeedButton# を使用すること。

  : 注意
    Phi::Button#caption は常に中央に揃えられるため， %c:bi_di% による位置揃えは意味を持たない。

1.1. super class

Phi::WinControl#

1.1. class methods

: new(parent[, name, caption]) : Phi::Button

1.1. properties

: cancel : Boolean
  [Esc] が押されたときに #on_click を実行するかどうか

: default: Boolean
  [Enter] が押されたときに #on_click を実行するかどうか

: modal_result : Fixnum
  ボタンが ( mode 付 ) 親 form を閉じるかどうか，またどのように閉じるか

  %c:Phi::Button#modal_result% を設定すると，簡単に button click で mode 付 form が閉じるようにできる。 button を click すると，親 form の %c:modal_result% はその button の %c:modal_result% と同じ値に設定される。

  たとえば， dialog box に [ OK ] と [ Cancel ] の 2 つのボタンがあるときは，ボタンの %c:modal_result% を設計時にそれぞれ %c:MR_OK% と %c:MR_CANCEL% に設定する。こうしておけば実行時には， [ OK ] を click すると dialog box の %c:modal_result% は %c:MR_OK% に変わり， [ Cancel ] を click すると dialog box の %c:modal_result% は %c:MR_CANCEL% に変わる。

  それ以上の処理が必要でない場合は，そのボタンのための #on_click を書かなくてよい。

1.1. methods

: click : nil
  マウスボタンをクリックしたときと同じ動作をシミュレートする。

  %c:click% を呼び出すと，ボタンの #modal_result の値が親フォームの Phi::Form#modal_result に割り当てられ，次に #on_click が呼ばれる。

1.1. event handlers

* Phi::WinControl#on_enter
* Phi::WinControl#on_exit
* Phi::WinControl#on_key_down
* Phi::WinControl#on_key_press
* Phi::WinControl#on_key_up
* Phi::Control#on_click
* Phi::Control#on_drag_drop
* Phi::Control#on_drag_over
* Phi::Control#on_end_dock
* Phi::Control#on_end_drag
* Phi::Control#on_mouse_down
* Phi::Control#on_mouse_move
* Phi::Control#on_mouse_up
* Phi::Control#on_start_dock
* Phi::Control#on_start_drag
