SACT2 for System4.x
メッセージ表示中やキーウェイト中にコールバック処理を 埋め込むための関数を設定します
void REGISTER_MSG_KEY_WAIT_CALLBACK(sact_msg_key_wait_callback_t func)
「bool sact_msg_key_wait_callback_t(void)」型の関数。
なし
この関数で登録した関数は、SACT内部のメッセージ表示処理中やSACT_A関数 でのキー入力待ち状態等でコールバック呼び出しされます。
登録された関数内で、マウスカーソル移動やクリックしたかどうかのチェック などを行うことで、メッセージウィンドウ周辺に配置したシステムボタン等 の処理を行えます。
コールバック関数でクリック処理を行った場合は、戻り値としてfalseを 返して下さい。通常はtrueを返して下さい。
void Test(void)
{
// コールバック関数の登録
REGISTER_MSG_KEY_WAIT_CALLBACK(&メッセージコールバック);
}
bool メッセージコールバック(void)
{
// クリックされたか調べる
if (!KEY_IS_DOWN(VK_LBUTTON)) return true;
// マウスポインタ位置を取得
int nX, nY;
if (!MOUSE_GET_POS(nX, nY)) return true;
// 指定スプライト上にマウスポインタ位置があるか調べる
if (!SP_IN_POINT(nSp, nX, nY)) return true;
// 指定スプライト上でクリックされたので、
// なんらかの処理を行う
何らかの処理();
// キー押下状態をクリアする
KEY_CLEAR();
// キー押下処理をフックしたので、falseを返す
return false;
}
Copyright © 2002-2004 ALICE-SOFT