get_login_async()


Game Maker Language リファレンス > 組み込み関数 用途別 > 非同期関数 > get_login_async

get_login_async

ユーザ名とパスワードを入力するウィンドウを非同期で表示します

構文

get_login_async(name, password);
username
デフォルトユーザ名
password
デフォルトパスワード

戻り値

Real
ds_mapのインデックス番号

説明

 この関数はユーザ名とパスワードを入力するウィンドウを開きます。引数にはウィンドウの初期入力値を指定します。これにより以前に入力した値を設定することが可能です。不要であれば空文字を指定します。これは非同期関数であり、入力完了を待たずに通常通りイベントを実行し続けます。ユーザが"OK"ボタンを押すと、変数"async_load"に"ds_map"型でデータを返します。

 このマップは、"username"(ユーザ名)と、"password"(パスワード)という2つのキーを持っています。例えばこの値をサーバに送信する際は、json_encode()でJSON文字列に変換すると良いでしょう。

 なおウィンドウへの入力が完了するまでは、ds_mapの"id"キーの値は「-1」となります。

"Create"イベントにユーザログインの処理を記述してみます。

ini_open("Profile.ini");
u = ini_read_string("User","0","");
p = ini_read_string("User","1","");
ini_close();
login = get_login_async(u,p);

上記コードはINIファイルを開いて(存在しない場合は新規作成する)、そのファイルに格納されたユーザ名とパスワードを取得します。INIファイルにユーザ名やパスワードが格納されていなければ空文字となります。そしてget_login_async()を呼び出しログインダイアログを表示し、戻り値を"login"変数に格納します。

非同期で処理しているので、結果はDialogイベントで以下のように戻り値をチェックする必要があります。

if ds_map_find_value(async_load, "id") == login
{
    u = ds_map_find_value(async_load, "username");
    p = ds_map_find_value(async_load, "password");
}

上記コードは、"async_load"変数の"id"キーをチェックし、"login"変数と値が一致するかどうかを判定しています。もしログインが完了すれば、ユーザが入力した情報を各種変数に格納します

Wiki内検索

#search(): You already view a search box

MENU

ドキュメント

GMLリファレンス

2ch

その他



最新の30件

2024-03-07 2023-08-09 2023-05-21 2023-05-20 2023-05-04 2022-10-13 2022-07-21 2022-07-02 2022-04-06 2021-11-30 2021-11-26 2021-10-03 2021-09-23 2021-08-15 2021-06-02 2021-01-23 2021-01-21 2021-01-19 2021-01-18 2021-01-16 2021-01-15

人気の10件

今日の10件



これまでの訪問者: 1044
今日の訪問者: 2
昨日の訪問者: 0
閲覧者: 6