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

INativeWindow (ネイティブインターフェイス)


このインターフェイスはウィンドウを扱うインターフェイスです。

●実装している標準クラス

   Window
   VirtualWindow
   FillWindow
   DRWindow
   DRRotateWindow
   BitmapWindow
   FrameWindow
   ScrollBar
   HScrollBar
   ListWindow
   EditWindow
   SrcEditWindow
   TileMapWindow
   GhostWindow
   ColorEffectWindow
   MappingEffectWindow
   ViewPort
   RelayPoint


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

名前概要
設定メソッド SetUpdateEnableフレーム更新の有無を設定します
取得メソッドconst GetUpdateEnableフレーム更新の有無を取得します
設定メソッド SetInputEnable入力処理の有無を設定します
取得メソッドconst GetInputEnable入力処理の有無を取得します
設定メソッド SetFocusOptionフォーカス制御を設定します
取得メソッドconst GetFocusOptionフォーカス制御を取得します
設定メソッド SetAlphaウィンドウの透過度を設定します
取得メソッドconst GetAlphaウィンドウの透過度を取得します
設定メソッド SetDrawModeウィンドウの描画モードを設定します
取得メソッドconst GetDrawModeウィンドウの描画モードを取得します
操作メソッド SetAutoAlphaウィンドウの透過度を自動的に変更します
操作メソッド FinishAutoAlphaウィンドウの自動的な透過度変更を完了させます
操作メソッド ResetAutoAlphaウィンドウの自動的な透過度変更を中止します
設定メソッド SetToneウィンドウの色を設定します
取得メソッドconst GetToneウィンドウの色を取得します
操作メソッド SetAutoToneウィンドウの色を自動的に変更します
操作メソッド FinishAutoToneウィンドウの自動的な色変更を完了させます
操作メソッド ResetAutoToneウィンドウの自動的な色変更を中止します
操作メソッド MoveWindowウィンドウを移動します
操作メソッド ResizeWindowウィンドウをリサイズします
操作メソッド SetAutoMoveウィンドウを自動的に移動します
操作メソッド SetAutoResizeウィンドウを自動的にリサイズします
操作メソッド FinishAutoMoveウィンドウの自動的な操作を完了させます
操作メソッド ResetAutoMoveウィンドウの自動的な操作を中止します
操作メソッド SetVisibleウィンドウの可視状態を設定します
操作メソッド ReDrawWindowウィンドウを再描画します
操作メソッド DeleteWindowウィンドウを削除します
操作メソッド SetInputFocusウィンドウに入力フォーカスを設定します
操作メソッド ReleaseInputFocus保持する入力フォーカスを解放します
比較・判定メソッドconst IsWindowArea指定した座標がウィンドウ領域内か判定します
取得メソッドconst IsVisibleウィンドウの可視状態を取得します
取得メソッドconst IsFocusWindowウィンドウが入力フォーカスを持っているか取得します
取得メソッドconst GetWindowPosウィンドウの座標を取得します
取得メソッドconst GetWindowViewPosウィンドウのビュー座標を取得します
取得メソッドconst GetWindowSizeウィンドウの大きさを取得します
取得メソッドconst GetLocalMousePosウィンドウのローカル座標でマウス位置を取得します
操作メソッド MoveWindowOrderウィンドウの表示序列を変更します
操作メソッド SetWindowOrderTopウィンドウの表示序列を最上位にします
操作メソッド SetWindowOrderBottomウィンドウの表示序列を最下位にします
設定メソッド SetDrawSettingsウィンドウの描画設定を一括設定します
取得メソッドconst GetDrawSettingsウィンドウの描画設定を一括取得します
取得メソッドconst GetWindowFromPoint指定座標にあるウィンドウを取得します
public操作メソッド SetBelongWindowウィンドウの所属を再設定します

●ネイティブインターフェイス

   このインターフェイスはネイティブインターフェイスを持っていません。

●ネイティブキャスト(C++レベルでのキャスト)

   IFGESWindow

●C++レベル追加情報

インターフェイスID: FGES_IFID_WINDOW



INativeWindow@@SetUpdateEnable

void SetUpdateEnable( INativeBool new_state)

   このウィンドウのフレーム更新処理の有効/無効を設定します。
   フレーム更新処理を無効にしたウィンドウは画面更新、入力処理が停止します。

INativeBool new_state :設定する状態。真にすると有効、偽にすると無効になります。

先頭へ


INativeWindow@@GetUpdateEnable

Bool GetUpdateEnable()const

   このウィンドウのフレーム更新処理の有効/無効を取得します。

戻り値:現在の状態。有効の場合真、無効の場合偽を返します。

先頭へ


INativeWindow@@SetInputEnable

void SetInputEnable( INativeBool new_state)

   このウィンドウの入力処理の有効/無効を設定します。
   入力処理を無効にしたウィンドウは画面は更新されますが操作できません。
   なお操作する機能を持たないウィンドウではこの設定は意味がありません。

INativeBool new_state :設定する状態。真にすると有効、偽にすると無効になります。

先頭へ


INativeWindow@@GetInputEnable

Bool GetInputEnable()const

   このウィンドウの入力処理の有効/無効を取得します。

戻り値:現在の状態。有効の場合真、無効の場合偽を返します。

先頭へ


INativeWindow@@SetFocusOption

void SetFocusOption( INativeInteger new_option)

   このウィンドウのフォーカス制御を設定します。
   操作できるウィンドウは入力フォーカスを持っているウィンドウだけです。
   このメソッドは所属ウィンドウへ入力フォーカスが設定される時の動作を設定します。
   
   このメソッドはウィンドウが作られている状態でのみ意味があります。
   フォーカス制御が矛盾した場合、より上位のウィンドウの制御が適用されます。

INativeInteger new_option :設定するフォーカス制御。
以下の一斉指定識別子か、各グループの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子ウィンドウへのフォーカス制御を拒否します

先頭へ


INativeWindow@@GetFocusOption

Integer GetFocusOption()const

   このウィンドウのフォーカス制御を取得します。
   
   このメソッドはウィンドウが作られている状態でのみ有意な値を返します。
   ウィンドウが作られていない状態で返される値は不定です。

戻り値:現在の状態。以下の各グループのOR結合。
スタックウィンドウ用:分離用マスクは Window::FOCUS_STACK_MASK です。
識別名内容
Window::FOCUS_STACK_OKスタックウィンドウへのフォーカス制御に干渉しません
Window::FOCUS_STACK_REDIRECTスタックウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_STACK_BLOCKスタックウィンドウへのフォーカス制御を拒否します

サブウィンドウ用:分離用マスクは Window::FOCUS_SUB_MASK です。
識別名内容
Window::FOCUS_SUB_OKサブウィンドウへのフォーカス制御に干渉しません
Window::FOCUS_SUB_REDIRECTサブウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_SUB_BLOCKサブウィンドウへのフォーカス制御を拒否します

子ウィンドウ用:分離用マスクは Window::FOCUS_CHILD_MASK です。
識別名内容
Window::FOCUS_CHILD_OK子ウィンドウへのフォーカス制御に干渉しません
Window::FOCUS_CHILD_REDIRECT子ウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_CHILD_BLOCK子ウィンドウへのフォーカス制御を拒否します

先頭へ


INativeWindow@@SetAlpha

void SetAlpha( INativeInteger new_alv)

   このウィンドウを半透明描画する場合の透過度を設定します。
   現在の描画モードが透過度を必要としない場合、設定はされますが表面上の変化はありません。
   
   このメソッドはウィンドウが作られている状態でのみ意味があります。

INativeInteger new_alv :設定する透過度(0〜255)

先頭へ


INativeWindow@@GetAlpha

Integer GetAlpha()const

   このウィンドウに設定されている透過度を取得します。
   
   このメソッドはウィンドウが作られている状態でのみ有意な値を返します。
   ウィンドウが作られていない状態で返される値は不定です。

戻り値:現在設定されている透過度。

先頭へ


INativeWindow@@SetDrawMode

Bool SetDrawMode( INativeInteger new_drawmode)

   このウィンドウを描画する方法を設定します。
   
   このメソッドはウィンドウが作られている状態でのみ意味があります。

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

INativeInteger new_drawmode :描画方法。以下のいずれか。
識別名内容
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半透明ハードライト合成

先頭へ


INativeWindow@@GetDrawMode

Integer GetDrawMode()const

   このウィンドウを描画する方法を取得します。
   
   このメソッドはウィンドウが作られている状態でのみ有意な値を返します。
   ウィンドウが作られていない状態で返される値は不定です。

戻り値:このウィンドウの描画方法。以下のいずれか。
識別名内容
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半透明ハードライト合成

先頭へ


INativeWindow@@SetAutoAlpha

Bool SetAutoAlpha( INativeInteger to_alv, INativeInteger move_frame,
             INativeInteger? loop=NULL, INativeInteger? easing=NULL)


   このウィンドウを半透明描画する場合の透過度を自動的に更新します。
   現在の描画モードが透過度を必要としない場合、設定はされますが表面上の変化はありません。
   
   このメソッドは呼び出された時の透過度から to_alv の透過度に向かって、 move_frame フレーム掛けてフェードします。
   既に自動更新が設定されている状態でこのメソッドを呼び出した場合、設定は上書きされます。
   この設定は毎フレーム SetAlpha メソッドをC++レベルで自動的に呼び出す形で実装されています。

   loop に Window::LOOP_ROTATION または Window::LOOP_ROUNDTRIP を指定すると、ループモードに従って設定が更新され続けます。
   この動作は FinishAutoAlpha または ResetAutoAlpha を呼び出すまで継続します。

戻り値:設定に成功すると真を返します。
   
INativeInteger to_alv :目標の透過度(0〜255)
INativeInteger move_frame :推移時間(1〜32767)
INativeInteger? loop=NULL :自動更新のループ処理を指定します。以下のいずれか。
識別名内容
Window::LOOP_SINGLEループせず目標の状態で完了します(デフォルト)
Window::LOOP_ROTATION完了後、開始時の状態から再実行します(循環モード)
Window::LOOP_ROUNDTRIP開始時の状態と目標の状態をループします(往復モード)
Window::LOOP_ONEROUND目標の状態まで推移した後、開始時の状態に推移して完了します
INativeInteger? easing=NULL :推移時のイージング処理を指定します。
         指定できる識別子は EasingLib#計算式と識別子の対応 を参照してください。

先頭へ


INativeWindow@@FinishAutoAlpha

void FinishAutoAlpha()

   このウィンドウに設定されている透過度の自動更新を完了させます。
   このメソッドを呼び出すと直ちに設定されている目標の透過度に更新されます。
   
先頭へ


INativeWindow@@ResetAutoAlpha

void ResetAutoAlpha()

   このウィンドウに設定されている透過度の自動更新を中止します。
   このメソッドを呼び出すと呼び出した瞬間の状態で透過度は放置されます。
   
先頭へ


INativeWindow@@SetTone

Bool SetTone( INativeInteger color,
             INativeInteger r_power, INativeInteger g_power, INativeInteger b_power)

   
   このウィンドウを色変換描画する場合の色を設定します。
   現在の描画モードが色を必要としない場合、設定はされますが表面上の変化はありません。
   
戻り値:設定に成功すると真を返します。
   
INativeInteger color :色変換に使う色
INativeInteger r_power :色変換する時の赤影響力(0〜256)
INativeInteger g_power :色変換する時の緑影響力(0〜256)
INativeInteger b_power :色変換する時の青影響力(0〜256)

先頭へ


INativeWindow@@GetTone

Bool GetTone(editable INativeInteger? color,editable INativeInteger? r_power,
            editable INativeInteger? g_power,editable INativeInteger? b_power)const


   このウィンドウを色変換描画する場合の色を取得します。
   
戻り値:取得に成功すると真を返します。
   
editable INativeInteger? color :[出力]色変換に使う色
      空参照を指定した場合、無視します。
editable INativeInteger? r_power :[出力]色変換する時の赤影響力(0〜256)
      空参照を指定した場合、無視します。
editable INativeInteger? g_power :[出力]色変換する時の緑影響力(0〜256)
      空参照を指定した場合、無視します。
editable INativeInteger? b_power :[出力]色変換する時の青影響力(0〜256)
      空参照を指定した場合、無視します。

先頭へ


INativeWindow@@SetAutoTone

Bool SetAutoTone( INativeInteger to_color,
             INativeInteger to_r_power, INativeInteger to_g_power, INativeInteger to_b_power,
             INativeInteger grad_frame, INativeInteger? loop=NULL, INativeInteger? easing=NULL)


   このウィンドウを色変換描画する場合の色を自動的に更新します。
   現在の描画モードが色を必要としない場合、設定はされますが表面上の変化はありません。
   
   このメソッドは呼び出された時の色から指定した色に向かって、 grad_frame フレーム掛けてフェードします。
   既に自動更新が設定されている状態でこのメソッドを呼び出した場合、設定は上書きされます。
   この設定は毎フレーム SetTone メソッドをC++レベルで自動的に呼び出す形で実装されています。

   loop に Window::LOOP_ROTATION または Window::LOOP_ROUNDTRIP を指定すると、ループモードに従って設定が更新され続けます。
   この動作は FinishAutoTone または ResetAutoTone を呼び出すまで継続します。

戻り値:設定に成功すると真を返します。
   
INativeInteger to_color :目標の色変換に使う色
INativeInteger to_r_power :目標の色変換する時の赤影響力(0〜256)
INativeInteger to_g_power :目標の色変換する時の緑影響力(0〜256)
INativeInteger to_b_power :目標の色変換する時の青影響力(0〜256)
INativeInteger grad_frame :推移時間(1〜32767)
INativeInteger? loop=NULL :自動更新のループ処理を指定します。以下のいずれか。
識別名内容
Window::LOOP_SINGLEループせず目標の状態で完了します(デフォルト)
Window::LOOP_ROTATION完了後、開始時の状態から再実行します(循環モード)
Window::LOOP_ROUNDTRIP開始時の状態と目標の状態をループします(往復モード)
Window::LOOP_ONEROUND目標の状態まで推移した後、開始時の状態に推移して完了します
INativeInteger? easing=NULL :推移時のイージング処理を指定します。
         指定できる識別子は EasingLib#計算式と識別子の対応 を参照してください。

先頭へ


INativeWindow@@FinishAutoTone

void FinishAutoTone()

   このウィンドウに設定されている色の自動更新を完了させます。
   このメソッドを呼び出すと直ちに設定されている目標の色に更新されます。
   
先頭へ


INativeWindow@@ResetAutoTone

void ResetAutoTone()

   このウィンドウに設定されている色の自動更新を中止します。
   このメソッドを呼び出すと呼び出した瞬間の状態で色は放置されます。
   
先頭へ


INativeWindow@@MoveWindow

Bool MoveWindow( INativeInteger? x, INativeInteger? y)

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

INativeInteger? x :移動先のX座標。
         空参照を指定した場合、現在の値を維持します。
INativeInteger? y :移動先のY座標。
         空参照を指定した場合、現在の値を維持します。

先頭へ


INativeWindow@@ResizeWindow

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


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

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

先頭へ


INativeWindow@@SetAutoMove

Bool SetAutoMove( INativeInteger to_x, INativeInteger to_y,
             INativeInteger move_frame, INativeInteger? loop=NULL, INativeInteger? easing=NULL)


   このウィンドウを自動的に移動します。
   座標系はこのウィンドウがトップレベルウィンドウである場合、仮想ビュー座標系が使用されます。
   このウィンドウが子ウィンドウかサブウィンドウとして所属している場合、所属しているウィンドウのローカル座標系が使用されます。
   それ以外のウィンドウとして所属している場合、所属しているウィンドウと同じ座標系が使用されます。
   
   このメソッドは呼び出された時の位置から指定した座標に向かって、 move_frame フレーム掛けて移動します。
   既に自動移動が設定されている状態でこのメソッドを呼び出した場合、設定は上書きされます。
   この設定は毎フレーム MoveWindow メソッドをC++レベルで自動的に呼び出す形で実装されています。

   loop に Window::LOOP_ROTATION または Window::LOOP_ROUNDTRIP を指定すると、ループモードに従って設定が更新され続けます。
   この動作は FinishAutoMove または ResetAutoMove を呼び出すまで継続します。

戻り値:設定に成功すると真を返します。
   
INativeInteger to_x :目標のX座標
INativeInteger to_y :目標のY座標
INativeInteger move_frame :推移時間(1〜32767)
INativeInteger? loop=NULL :自動更新のループ処理を指定します。以下のいずれか。
識別名内容
Window::LOOP_SINGLEループせず目標の状態で完了します(デフォルト)
Window::LOOP_ROTATION完了後、開始時の状態から再実行します(循環モード)
Window::LOOP_ROUNDTRIP開始時の状態と目標の状態をループします(往復モード)
Window::LOOP_ONEROUND目標の状態まで推移した後、開始時の状態に推移して完了します
INativeInteger? easing=NULL :推移時のイージング処理を指定します。
         指定できる識別子は EasingLib#計算式と識別子の対応 を参照してください。

先頭へ


INativeWindow@@SetAutoResize

Bool SetAutoResize( INativeInteger to_x, INativeInteger to_y,
             INativeInteger to_width, INativeInteger to_height,
             INativeInteger move_frame, INativeInteger? loop=NULL, INativeInteger? easing=NULL)


   このウィンドウを自動的に移動し、さらに大きさを変更します。
   指定した大きさが現在と同じである場合、 SetAutoMove メソッドと同じ扱いになります。
   座標系はこのウィンドウがトップレベルウィンドウである場合、仮想ビュー座標系が使用されます。
   このウィンドウが子ウィンドウかサブウィンドウとして所属している場合、所属しているウィンドウのローカル座標系が使用されます。
   それ以外のウィンドウとして所属している場合、所属しているウィンドウと同じ座標系が使用されます。
   
   このメソッドは呼び出された時の位置から指定した座標に向かって、 move_frame フレーム掛けて移動し、
   さらに呼び出された時の大きさから指定された大きさに向かって、 move_frame フレーム掛けてリサイズします。
   既に自動移動が設定されている状態でこのメソッドを呼び出した場合、設定は上書きされます。
   この設定は毎フレーム ResizeWindow メソッドをC++レベルで自動的に呼び出す形で実装されており、
   ウィンドウクラスによっては非常に重い動作となる場合があります。

   loop に Window::LOOP_ROTATION または Window::LOOP_ROUNDTRIP を指定すると、ループモードに従って設定が更新され続けます。
   この動作は FinishAutoMove または ResetAutoMove を呼び出すまで継続します。

戻り値:設定に成功すると真を返します。
   
INativeInteger to_x :目標のX座標
INativeInteger to_y :目標のY座標
INativeInteger to_width :目標の横幅
INativeInteger to_height :目標の縦幅
INativeInteger move_frame :推移時間(1〜32767)
INativeInteger? loop=NULL :自動更新のループ処理を指定します。以下のいずれか。
識別名内容
Window::LOOP_SINGLEループせず目標の状態で完了します(デフォルト)
Window::LOOP_ROTATION完了後、開始時の状態から再実行します(循環モード)
Window::LOOP_ROUNDTRIP開始時の状態と目標の状態をループします(往復モード)
Window::LOOP_ONEROUND目標の状態まで推移した後、開始時の状態に推移して完了します
INativeInteger? easing=NULL :推移時のイージング処理を指定します。
         指定できる識別子は EasingLib#計算式と識別子の対応 を参照してください。

先頭へ


INativeWindow@@FinishAutoMove

void FinishAutoMove()

   このウィンドウに設定されている位置と大きさの自動更新を完了させます。
   このメソッドを呼び出すと直ちに設定されている目標の位置と大きさに更新されます。
   
先頭へ


INativeWindow@@ResetAutoMove

void ResetAutoMove()

   このウィンドウに設定されている位置と大きさの自動更新を中止します。
   このメソッドを呼び出すと呼び出した瞬間の状態で位置と大きさは放置されます。
   
先頭へ


INativeWindow@@SetVisible

Bool SetVisible( INativeBool new_state)

   このウィンドウの可視状態を変更します。
   ウィンドウを不可視状態にした場合、このウィンドウとその子ウィンドウ、
   さらに子ウィンドウに所属するウィンドウは見えなくなり、操作もできなくなります。
   
   このメソッドはウィンドウが作られている状態でのみ意味があります。

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

INativeBool new_state :設定する状態。真にすると可視、偽にすると不可視になります。

先頭へ


INativeWindow@@ReDrawWindow

void ReDrawWindow()

   このウィンドウを強制的に再描画します。
   通常、再描画が必要な場合ウィンドウクラスは自動的に再描画を行います。
   明示的に呼び出すよう指定されている場合以外、呼び出す必要はありません。
   
   また、ウィンドウクラスによっては通常の再描画はキャッシュ制御していますが、
   このメソッドを使用した場合はキャッシュを放棄して全て描画しなおします。
   
   このメソッドはウィンドウが作られている状態でのみ意味があります。

先頭へ


INativeWindow@@DeleteWindow

Bool DeleteWindow()

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

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

先頭へ


INativeWindow@@SetInputFocus

Bool SetInputFocus()

   このウィンドウに入力フォーカスを設定します。
   このメソッドが成功すると現在入力フォーカスを持っているウィンドウは入力フォーカスを失います。
   また、親ウィンドウがフォーカスを制御している場合、このウィンドウは入力フォーカスを獲得できない場合があります。
   
   ウィンドウへの入力処理は入力フォーカスを持つウィンドウだけが行うべきです。
   ウィンドウへの操作を扱う場合は IsFocusWindow メソッドで確認してから行うようにしてください。
   
   このメソッドはウィンドウが作られている状態でのみ意味があります。

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

先頭へ


INativeWindow@@ReleaseInputFocus

Bool ReleaseInputFocus()

   このウィンドウが持っている入力フォーカスを解放します。
   このウィンドウが入力フォーカスを持っていない場合、失敗します。
   
   このメソッドが成功すると、このウィンドウが入力フォーカスを獲得する前に入力フォーカスを
   持っていたウィンドウが入力フォーカスを再獲得します。
   この時該当するウィンドウが存在しない場合、入力フォーカスはどのウィンドウも持っていない状態になります。
   
   ウィンドウへの入力処理は入力フォーカスを持つウィンドウだけが行うべきです。
   ウィンドウへの操作を扱う場合は IsFocusWindow メソッドで確認してから行うようにしてください。
   
   このメソッドはウィンドウが作られている状態でのみ意味があります。

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

先頭へ


INativeWindow@@IsWindowArea

Bool IsWindowArea( INativeInteger x, INativeInteger y)const

   指定された座標がこのウィンドウの領域内であるか判定します。
   座標系はこのウィンドウがトップレベルウィンドウである場合、仮想ビュー座標系が使用されます。
   このウィンドウが子ウィンドウかサブウィンドウとして所属している場合、所属しているウィンドウのローカル座標系が使用されます。
   それ以外のウィンドウとして所属している場合、所属しているウィンドウと同じ座標系が使用されます。

戻り値:指定した座標がウィンドウの領域内である場合、真を返します。

INativeInteger x :判定するX座標
INativeInteger y :判定するY座標

先頭へ


INativeWindow@@IsVisible

Bool IsVisible()const

   このウィンドウの可視状態を取得します。
   
戻り値:このウィンドウが可視である場合、真を返します。

先頭へ


INativeWindow@@IsFocusWindow

Bool IsFocusWindow()const

   このウィンドウが現在入力フォーカスを持っているかを取得します。
   
戻り値:このウィンドウが入力フォーカスを持っている場合、真を返します。

先頭へ


INativeWindow@@GetWindowPos

void GetWindowPos(editable INativeInteger? x,editable INativeInteger? y)const

   このウィンドウの位置を取得します。
   座標系はこのウィンドウがトップレベルウィンドウである場合、仮想ビュー座標系が使用されます。
   このウィンドウが子ウィンドウかサブウィンドウとして所属している場合、所属しているウィンドウのローカル座標系が使用されます。
   それ以外のウィンドウとして所属している場合、所属しているウィンドウと同じ座標系が使用されます。
   
editable INativeInteger? x :[出力]ウィンドウのX座標を出力するオブジェクト。
      空参照を指定した場合、無視します。
editable INativeInteger? y :[出力]ウィンドウのY座標を出力するオブジェクト。
      空参照を指定した場合、無視します。

先頭へ


INativeWindow@@GetWindowViewPos

Bool GetWindowViewPos(editable INativeInteger? x,editable INativeInteger? y)const

   このウィンドウの仮想ビュー座標系での位置を取得します。
   このメソッドはウィンドウを作成している場合のみ使用できます。

戻り値:取得に成功すると真を返します。
   
editable INativeInteger? x :[出力]ウィンドウのX座標を出力するオブジェクト。
      空参照を指定した場合、無視します。
editable INativeInteger? y :[出力]ウィンドウのY座標を出力するオブジェクト。
      空参照を指定した場合、無視します。

先頭へ


INativeWindow@@GetWindowSize

void GetWindowSize(editable INativeInteger? width,editable INativeInteger? height)const

   このウィンドウの大きさを取得します。
   
editable INativeInteger? width :[出力]ウィンドウの横幅を出力するオブジェクト。
      空参照を指定した場合、無視します。
editable INativeInteger? height :[出力]ウィンドウの縦幅を出力するオブジェクト。
      空参照を指定した場合、無視します。

先頭へ


INativeWindow@@GetLocalMousePos

Bool GetLocalMousePos(editable INativeInteger? x,editable INativeInteger? y,
             INativeBool? onlywndarea=NULL)const


   このウィンドウのローカル座標系でマウスポインタの位置を取得します。
   このメソッドはウィンドウを作成している場合のみ使用できます。

戻り値:取得に成功すると真を返します。
   
editable INativeInteger? x :[出力]マウスポインタのX座標を出力するオブジェクト。
      空参照を指定した場合、無視します。
editable INativeInteger? y :[出力]マウスポインタのY座標を出力するオブジェクト。
      空参照を指定した場合、無視します。
INativeBool? onlywndarea=NULL :真を指定するとウィンドウ範囲内にマウスポインタがある場合のみ成功します。
      偽を指定するとマウスポインタがどこにあっても座標系変換に成功すればメソッドが成功します。
      空参照を指定した場合、偽を指定したものとして扱います。

先頭へ


INativeWindow@@MoveWindowOrder

Bool MoveWindowOrder( INativeInteger move_order)

   このウィンドウの表示序列を変更します。
   
   ウィンドウの表示序列は所属ウィンドウとウィンドウタイプごとに管理されています。
   このメソッドで所属ウィンドウやウィンドウタイプを変更することはできず、
   同じ所属ウィンドウおよびウィンドウタイプのウィンドウ間での表示順のみを変更します。
   
   このメソッドは同じ表示序列グループに属するウィンドウ間の描画順を指定した数だけ移動します。
   move_order に負値を指定した場合、画面上ではより上側に表示されるようになります。
   move_order に正値を指定した場合、画面上ではより下側に表示されるようになります。

戻り値:表示序列の変更に成功した場合、真を返します。

INativeInteger move_order :表示序列を移動させる数。

先頭へ


INativeWindow@@SetWindowOrderTop

Bool SetWindowOrderTop()

   このウィンドウの表示序列を最上位にします。
   
   ウィンドウの表示序列は所属ウィンドウとウィンドウタイプごとに管理されています。
   このメソッドで所属ウィンドウやウィンドウタイプを変更することはできず、
   同じ所属ウィンドウおよびウィンドウタイプのウィンドウ間での表示順のみを変更します。
   
   このメソッドは同じ表示序列グループに属するウィンドウ間の描画順でこのウィンドウを一番上にします。

戻り値:表示序列の設定に成功した場合、真を返します。

先頭へ


INativeWindow@@SetWindowOrderBottom

Bool SetWindowOrderBottom()

   このウィンドウの表示序列を最下位にします。
   
   ウィンドウの表示序列は所属ウィンドウとウィンドウタイプごとに管理されています。
   このメソッドで所属ウィンドウやウィンドウタイプを変更することはできず、
   同じ所属ウィンドウおよびウィンドウタイプのウィンドウ間での表示順のみを変更します。
   
   このメソッドは同じ表示序列グループに属するウィンドウ間の描画順でこのウィンドウを一番下にします。

戻り値:表示序列の設定に成功した場合、真を返します。

先頭へ


INativeWindow@@SetDrawSettings

Bool SetDrawSettings( WindowDrawInfo drawinfo)
   
   このウィンドウの描画設定を一括して行います。
   このメソッドで設定されるのは
   ウィンドウの位置、大きさ、描画モード、可視状態、透過度、色変換設定です。
   
戻り値:設定に成功すると真を返します。
   
WindowDrawInfo drawinfo :設定する構造体。

先頭へ


INativeWindow@@GetDrawSettings

Bool GetDrawSettings(editable WindowDrawInfo out_drawinfo)const

   このウィンドウの描画設定を構造体に保存します。
   このメソッドで保存されるのは
   ウィンドウの位置、大きさ、描画モード、可視状態、透過度、色変換設定です。
   
戻り値:取得に成功すると真を返します。
   
editable WindowDrawInfo out_drawinfo :[出力]描画設定を保存する構造体。

先頭へ


INativeWindow@@GetWindowFromPoint

INativeWindow?@ GetWindowFromPoint(
             INativeInteger x, INativeInteger y, INativeInteger? option=NULL)const


   このウィンドウに所属するウィンドウのうち、指定した座標にある、列挙可能な最も上にあるウィンドウを返します。
   このメソッドはこのウィンドウのローカル座標系で座標を指定します。
   
   デフォルトではこのウィンドウに直属のウィンドウのみが取得対象になります。
   直属のウィンドウに所属するウィンドウも取得対象にするには WFP_RECURSIVE オプションを使用します。
   
戻り値:指定した座標にあるウィンドウのうち、列挙可能な最も上にあるウィンドウを返します。
      該当するウィンドウが存在しない場合、空参照を返します。

INativeInteger x :ウィンドウを取得するX座標。
INativeInteger y :ウィンドウを取得するY座標。
INativeInteger? option=NULL :取得対象のウィンドウを決定するオプション。以下のOR結合。
識別名内容
Window::WFP_TYPE_STACKスタックウィンドウを取得対象にします。
Window::WFP_TYPE_SUBサブウィンドウを取得対象にします。
Window::WFP_TYPE_CHILD子ウィンドウを取得対象にします。
Window::WFP_TYPE_ALL全種類のウィンドウを取得対象にします。(デフォルト)
Window::WFP_FEX_UPDATE_OFF更新停止しているウィンドウを取得対象から除外します。
Window::WFP_FEX_INPUT_OFF入力停止しているウィンドウを取得対象から除外します。
Window::WFP_FEX_INVISIBLE非表示のウィンドウを取得対象から除外します。
Window::WFP_FEX_ALV0透過度が0のウィンドウを取得対象から除外します。
Window::WFP_RECURSIVE取得対象のウィンドウに所属するウィンドウも再帰的に検索します。

先頭へ


INativeWindow@@SetBelongWindow

Bool SetBelongWindow( INativeInteger wndtype, INativeWindow? belong_wnd)

   このウィンドウが所属するウィンドウを指定したウィンドウに変更します。
   このウィンドウに所属しているウィンドウをこのウィンドウが所属するウィンドウにすることはできません。
   このメソッドでウィンドウが所属するシーンを変更することはできません。
   
戻り値:処理に成功すると真を返します。

INativeInteger wndtype :新しいウィンドウタイプ。以下のいずれか。
識別子意味
Window::WND_TOPLEVELトップレベルウィンドウ。
独立して扱われるウィンドウです。仮想ビュー座標系を使用します。
Window::WND_CHILD子ウィンドウ。
親ウィンドウの中に配置されるウィンドウで、親ウィンドウの領域外に出ると正常に描画されません。
座標系は親ウィンドウのローカル座標となり、親ウィンドウが移動すると連動して移動します。
また、親ウィンドウに対して行われた操作の一部は連動して影響します。
Window::WND_SUBサブウィンドウ。
所属するウィンドウの補足情報を提示するためのウィンドウです。
座標系は所属するウィンドウのローカル座標となり、所属するウィンドウが移動すると連動して移動します。
原則として所属するウィンドウとは独立して扱われますが、削除や更新は連動します。
Window::WND_STACKスタックウィンドウ。
所属するウィンドウの追加処理を行うウィンドウで、ダイアログに近い扱いをします。
座標系は所属するウィンドウと同じになります。
原則として所属するウィンドウとは独立して扱われますが、削除は連動します。
また、サブウィンドウよりも上に描画されます。
Window::WND_PREV挿入ウィンドウ。
指定したウィンドウの次の序列に作成するウィンドウを挿入します。
ウィンドウタイプや座標系は指定したウィンドウと同じになります。
INativeWindow? belong_wnd :このウィンドウが今後所属するウィンドウ。意味はウィンドウタイプに依存します。
ウィンドウタイプごとの意味:
ウィンドウタイプ意味
トップレベルウィンドウこの引数は無視されます。
子ウィンドウ所属させる親ウィンドウ。
サブウィンドウ所属させるウィンドウ。
スタックウィンドウ所属させるウィンドウ。
挿入ウィンドウ直前の序列のウィンドウ。所属は指定したウィンドウと同じになります。

先頭へ


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

最終更新 2023/02/04