[前へ] [目次へ] [次へ]

BasicButtonWindow (script/fgs/system_multipart.fges)


このクラスは単純なボタンを描画するのに適したクラスです。

●継承/注入

   wraps BitmapWindow
   inject JNativeWindowTemplate


●インターフェイスとインターフェイスメソッド

   wraps INativeWindow

●クラスメソッド

   このクラスはクラスメソッドを持っていません。

●クラスメンバメソッド

名前概要
public操作メソッド Draw描画内容を設定します
public操作メソッド DrawEx描画内容を設定します
public操作メソッド NewWindowウィンドウを作成します
public操作メソッド ResizeWindowウィンドウをリサイズします
public操作メソッド DeleteWindowウィンドウを削除します

●クラス共有変数

名前概要
public buttonframe_drデフォルトフレームDR
public margin_left左側テキストマージン
public margin_top上側テキストマージン
public margin_right右側テキストマージン
public margin_bottom下側テキストマージン

●インスタンス変数

名前概要
internal bitmap描画内容に使用する画像




BasicButtonWindow::Draw

public Bool Draw( INativeDrawResource? base=NULL, INativeDrawResource? dr=NULL,
             String? text=NULL, FGESFont? font=NULL)


   ウィンドウの描画内容を設定します。
   このメソッドはウィンドウを作成している状態でなければ機能しません。

戻り値:処理に成功すると真を返します。
   
INativeDrawResource? base=NULL :ウィンドウの背景に使用するDR。
      空参照を指定すると @buttonframe_dr を使用します。
INativeDrawResource? dr=NULL :背景の上に描画するDR。
      空参照を指定すると無視します。
String? text=NULL :ボタンに描画する文字列。
      空参照を指定すると無視します。
FGESFont? font=NULL :文字列の描画に使用するフォント。
      空参照を指定するとデフォルトフォントを使用します。

先頭へ


BasicButtonWindow::DrawEx

public Bool DrawEx( INativeDrawResource? base, INativeDrawResource content_dr,
             Integer content_x, Integer content_y, Integer content_width, Integer content_height,
             INativeDrawResource? full_dr=NULL, String? text=NULL,
             FGESFont? font=NULL, INativeDrawResource? top_dr=NULL)


   ウィンドウの描画内容を細かく設定します。
   このメソッドはウィンドウを作成している状態でなければ機能しません。

戻り値:処理に成功すると真を返します。
   
INativeDrawResource? base :ウィンドウの背景に使用するDR。
      空参照を指定すると @buttonframe_dr を使用します。
INativeDrawResource content_dr :背景の上に描画するDR。
Integer content_x : content_dr を描画する左上X座標。
Integer content_y : content_dr を描画する左上Y座標。
Integer content_width : content_dr を描画する横幅。
Integer content_height : content_dr を描画する縦幅。
INativeDrawResource? full_dr=NULL : content_dr の上に描画するDR。
      空参照を指定すると無視します。
String? text=NULL :ボタンに描画する文字列。
      空参照を指定すると無視します。
FGESFont? font=NULL :文字列の描画に使用するフォント。
      空参照を指定するとデフォルトフォントを使用します。
INativeDrawResource? top_dr=NULL :テキストの上に描画するDR。
      空参照を指定すると無視します。

先頭へ


BasicButtonWindow::NewWindow

public Bool NewWindow( INativeInteger x, INativeInteger y,
             INativeInteger width, INativeInteger height, INativeWindow? addwnd,
             INativeInteger wndtype, INativeInteger? drawmode=NULL, INativeInteger? focus=NULL,
             INativeBool? visible=NULL, INativeInteger? alv=NULL)


   このオブジェクトでウィンドウを作成します。
   座標系は作成するウィンドウタイプによって決定されます。
   ウィンドウタイプがトップレベルウィンドウである場合、仮想ビュー座標系が使用されます。
   ウィンドウタイプが子ウィンドウかサブウィンドウである場合、所属させるウィンドウのローカル座標系が使用されます。
   それ以外のウィンドウタイプである場合、所属させるウィンドウと同じ座標系が使用されます。
   
   作成するウィンドウは現在のシーンに関連付けられます。
   シーンが起動していない状態ではこのメソッドは使用できません。
   
   このクラスはウィンドウを作成しただけでは正しく描画されません。
   続けて Draw または DrawEx を呼び出して描画内容を設定してください。

戻り値:作成に成功すると真を返します。
   
INativeInteger x :ウィンドウを作成するX座標。座標系はウィンドウタイプに依存します。
INativeInteger y :ウィンドウを作成するY座標。座標系はウィンドウタイプに依存します。
INativeInteger width :ウィンドウの横幅。
INativeInteger height :ウィンドウの縦幅。
INativeWindow? addwnd :作成するウィンドウの所属を決定するウィンドウ。意味はウィンドウタイプに依存します。
ウィンドウタイプごとの意味:
ウィンドウタイプ意味
トップレベルウィンドウこの引数は無視されます。
子ウィンドウ所属させる親ウィンドウ。
サブウィンドウ所属させるウィンドウ。
スタックウィンドウ所属させるウィンドウ。
挿入ウィンドウ直前の序列のウィンドウ。所属は指定したウィンドウと同じになります。
INativeInteger wndtype :ウィンドウタイプ。以下のいずれか。
識別子意味
Window::WND_TOPLEVELトップレベルウィンドウ。
独立して扱われるウィンドウです。仮想ビュー座標系を使用します。
Window::WND_CHILD子ウィンドウ。
親ウィンドウの中に配置されるウィンドウで、親ウィンドウの領域外に出ると正常に描画されません。
座標系は親ウィンドウのローカル座標となり、親ウィンドウが移動すると連動して移動します。
また、親ウィンドウに対して行われた操作の一部は連動して影響します。
Window::WND_SUBサブウィンドウ。
所属するウィンドウの補足情報を提示するためのウィンドウです。
座標系は所属するウィンドウのローカル座標となり、所属するウィンドウが移動すると連動して移動します。
原則として所属するウィンドウとは独立して扱われますが、削除や更新は連動します。
Window::WND_STACKスタックウィンドウ。
所属するウィンドウの追加処理を行うウィンドウで、ダイアログに近い扱いをします。
座標系は所属するウィンドウと同じになります。
原則として所属するウィンドウとは独立して扱われますが、削除は連動します。
また、サブウィンドウよりも上に描画されます。
Window::WND_PREV挿入ウィンドウ。
指定したウィンドウの次の序列に作成するウィンドウを挿入します。
ウィンドウタイプや座標系は指定したウィンドウと同じになります。
INativeInteger? drawmode=NULL :描画方法。以下のいずれか。
識別名内容
Window::COPY色と透過度を上書き
Window::COPYC色のみを上書き
Window::ALPHA透過描画(デフォルト)
Window::BLEND半透明描画
Window::LAYERレイヤー描画
Window::BACK背後に描画
Window::ALPHABLEND透過半透明描画
Window::LAYERBLENDレイヤー半透明描画
Window::BACKBLEND背後に半透明
Window::MIXALPHA透過合成
Window::MIXBLEND半透明合成
Window::MIXLAYERレイヤー合成
Window::MIXBACK背後に合成
Window::MIXALPHABLEND透過半透明合成
Window::MIXLAYERBLENDレイヤー半透明合成
Window::MIXBACKBLEND背後に半透明合成
Window::COPYAアルファのみ上書き
Window::MULAアルファのみ乗算
Window::REVMULAアルファのみ逆乗算
Window::ADDAアルファのみ加算
Window::SUBAアルファのみ減算
Window::FILLAアルファ設定
Window::BLENDALPHAアルファのみブレンド
Window::COPYTONE色変換して上書き
Window::TONE色変換して色のみに描画
Window::ALPHATONE色変換して透過描画
Window::LAYERTONE色変換してレイヤー描画
Window::BACKTONE色変換して背後に描画
Window::MIXTONE色変換して合成
Window::MIXALPHATONE色変換して透過合成
Window::MIXLAYERTONE色変換してレイヤー合成
Window::MIXBACKTONE色変換して背後に合成
Window::MULC乗算
Window::REVMULC逆乗算
Window::ADDC加算
Window::SUBC減算
Window::SCREENスクリーン
Window::OVERLAYオーバーレイ
Window::HARDLIGHTハードライト
Window::MULBLENDC半透明乗算
Window::ADDBLENDC半透明加算
Window::SUBBLENDC半透明減算
Window::SCREENBLEND半透明スクリーン
Window::OVERLAYBLEND半透明オーバーレイ
Window::HARDLIGHTBLEND半透明ハードライト
Window::MUL乗算合成
Window::REVMUL逆乗算合成
Window::ADD加算合成
Window::SUB減算合成
Window::MIXSCREENスクリーン合成
Window::MIXOVERLAYオーバーレイ合成
Window::MIXHARDLIGHTハードライト合成
Window::MULBLEND半透明乗算合成
Window::ADDBLEND半透明加算合成
Window::SUBBLEND半透明減算合成
Window::MIXSCREENBLEND半透明スクリーン合成
Window::MIXOVERLAYBLEND半透明オーバーレイ合成
Window::MIXHARDLIGHTBLEND半透明ハードライト合成
INativeInteger? focus=NULL :フォーカス制御。
以下の一斉指定識別子か、各グループのOR結合。
一斉指定識別子:全グループで同じ意味を設定したOR結合済み識別子。
識別名内容
Window::FOCUS_OK所属ウィンドウへのフォーカス制御に干渉しません(デフォルト)
Window::FOCUS_REDIRECT所属ウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_BLOCK所属ウィンドウへのフォーカス制御を拒否します
スタックウィンドウ用:
識別名内容
Window::FOCUS_STACK_OKスタックウィンドウへのフォーカス制御に干渉しません
Window::FOCUS_STACK_REDIRECTスタックウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_STACK_BLOCKスタックウィンドウへのフォーカス制御を拒否します
サブウィンドウ用:
識別名内容
Window::FOCUS_SUB_OKサブウィンドウへのフォーカス制御に干渉しません
Window::FOCUS_SUB_REDIRECTサブウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_SUB_BLOCKサブウィンドウへのフォーカス制御を拒否します
子ウィンドウ用:
識別名内容
Window::FOCUS_CHILD_OK子ウィンドウへのフォーカス制御に干渉しません
Window::FOCUS_CHILD_REDIRECT子ウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_CHILD_BLOCK子ウィンドウへのフォーカス制御を拒否します
INativeBool? visible=NULL :ウィンドウを可視にする場合は真を指定します。
         空参照を指定した場合は真として扱います。
INativeInteger? alv=NULL :ウィンドウを半透明描画する場合の透過度。

先頭へ


BasicButtonWindow::ResizeWindow

public Bool ResizeWindow( INativeInteger? x, INativeInteger? y,
             INativeInteger? width, INativeInteger? height)


   このウィンドウを指定した座標に移動し、さらに大きさを変更します。
   座標系はこのウィンドウがトップレベルウィンドウである場合、仮想ビュー座標系が使用されます。
   このウィンドウが子ウィンドウかサブウィンドウとして所属している場合、所属しているウィンドウのローカル座標系が使用されます。
   それ以外のウィンドウとして所属している場合、所属しているウィンドウと同じ座標系が使用されます。
   
   ウィンドウクラスによってはこの処理は時間が掛かる場合があります。
   
戻り値:処理に成功すると真を返します。

INativeInteger? x :移動先のX座標。
         空参照を指定した場合、現在の値を維持します。
INativeInteger? y :移動先のY座標。
         空参照を指定した場合、現在の値を維持します。
INativeInteger? width :新しいウィンドウの横幅。
         空参照を指定した場合、現在の値を維持します。
INativeInteger? height :新しいウィンドウの縦幅。
         空参照を指定した場合、現在の値を維持します。

先頭へ


BasicButtonWindow::DeleteWindow

public Bool DeleteWindow()

   このウィンドウを削除します。
   このウィンドウに所属するウィンドウがある場合、そのウィンドウも全て削除されます。
   
   このメソッドはウィンドウが作られている状態でのみ意味があります。

戻り値:処理に成功すると真を返します。

先頭へ


BasicButtonWindow::buttonframe_dr

public DRFrame buttonframe_dr

   背景DRを指定しない場合に使用するデフォルトのDR。

先頭へ


BasicButtonWindow::margin_left

public Integer margin_left

   テキスト描画の左側マージン。

先頭へ


BasicButtonWindow::margin_top

public Integer margin_top

   テキスト描画の上側マージン。

先頭へ


BasicButtonWindow::margin_right

public Integer margin_right

   テキスト描画の右側マージン。

先頭へ


BasicButtonWindow::margin_bottom

public Integer margin_bottom

   テキスト描画の下側マージン。

先頭へ


BasicButtonWindow::bitmap

internal Bitmap bitmap

   ウィンドウの描画内容に使用するビットマップ。

先頭へ


[前へ] [目次へ] [次へ]

最終更新 2023/02/04